{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# 23 - Challenges with Effect Heterogeneity and Nonlinearity\n",
    "\n",
    "Predicting treatment effects at the unit level is extremely difficult due to the lack of ground truth. Since we only observe one potential outcome $T(t)$, we can't directly estimate it. Rather, we have to rely on target transformations (that can also be viewed as cleverly designed loss function) to estimate conditional treatment effects only in expectation. But that is not the only challenge. Because treatment effects are so slippery, its estimators are often quite noisy. This has huge practical consequences for applications where we want to segment units by their treatment effect, like when we want to do personalized treatment allocation.\n",
    "\n",
    "We will now see that, sometimes, we can get a better treatment effect segmentation if we don't directly try to estimate CATE, but instead focus on another proxy target, which usually has less variance. A common case when this happens is when the outcome variable of interest $Y$ is binary.\n",
    "\n",
    "## Treatment Effects on Binary Outcomes\n",
    "\n",
    "\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {
    "tags": [
     "hide-input"
    ]
   },
   "outputs": [],
   "source": [
    "import pandas as pd\n",
    "import numpy as np\n",
    "import seaborn as sns\n",
    "import statsmodels.formula.api as smf\n",
    "from matplotlib import pyplot as plt\n",
    "from matplotlib import style\n",
    "style.use(\"ggplot\")\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {
    "tags": [
     "hide-input"
    ]
   },
   "outputs": [],
   "source": [
    "from typing import List\n",
    "\n",
    "import numpy as np\n",
    "import pandas as pd\n",
    "from toolz import curry, partial\n",
    "\n",
    "@curry\n",
    "def avg_treatment_effect(df, treatment, outcome):\n",
    "    return df.loc[df[treatment] == 1][outcome].mean() - df.loc[df[treatment] == 0][outcome].mean()\n",
    "    \n",
    "    \n",
    "\n",
    "@curry\n",
    "def cumulative_effect_curve(df: pd.DataFrame,\n",
    "                            treatment: str,\n",
    "                            outcome: str,\n",
    "                            prediction: str,\n",
    "                            min_rows: int = 30,\n",
    "                            steps: int = 100,\n",
    "                            effect_fn = avg_treatment_effect) -> np.ndarray:\n",
    "    \n",
    "    size = df.shape[0]\n",
    "    ordered_df = df.sort_values(prediction, ascending=False).reset_index(drop=True)\n",
    "    n_rows = list(range(min_rows, size, size // steps)) + [size]\n",
    "    return np.array([effect_fn(ordered_df.head(rows), treatment, outcome) for rows in n_rows])\n",
    "\n",
    "\n",
    "@curry\n",
    "def cumulative_gain_curve(df: pd.DataFrame,\n",
    "                          treatment: str,\n",
    "                          outcome: str,\n",
    "                          prediction: str,\n",
    "                          min_rows: int = 30,\n",
    "                          steps: int = 100,\n",
    "                          effect_fn = avg_treatment_effect) -> np.ndarray:\n",
    "    \n",
    "\n",
    "    size = df.shape[0]\n",
    "    n_rows = list(range(min_rows, size, size // steps)) + [size]\n",
    "\n",
    "    cum_effect = cumulative_effect_curve(df=df, treatment=treatment, outcome=outcome, prediction=prediction,\n",
    "                                         min_rows=min_rows, steps=steps, effect_fn=effect_fn)\n",
    "\n",
    "    return np.array([effect * (rows / size) for rows, effect in zip(n_rows, cum_effect)])\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Here is an incredibly common problem you might face if you find yourself working for a tech company: management wants to boost customer conversion to your product by means of some sort of nudge. For example, they might want to increase the number of app installs by offering a 10 BRL voucher for customers to make in-app purchases. Or offer a free ride the first time you use their ride sharing app. Or decrease transaction fees in the first three months in their investment platform. Since nudges are often expensive, they would love to not have to do it for everyone. Rather, it would be great if we could use the conversion boosting nudge only on those customers who are most sensitive to it.\n",
    " \n",
    "In causal inference terms, you can probably tell by now that this type of business problem falls under the treatment effect heterogeneity (TEH) umbrella. Specifically, you have a costly nudge as the treatment $T$, conversion as the binary outcome $Y$ and customer specific pre-treatment features as $X$. You could then estimate the conditional average treatment effect $E[Y_1 - Y_0|X]$ (or $E[Y'(T)|X]$ if the treatment is continuous)$ with something like Double/Debiased ML and finally target with the nudge only the customers with the highest estimated treatment effect. In business terms, you would be personalizing your conversion strategy. You would be finding a segment of customers with high conversion incrementality and using nudges only in them.\n",
    " \n",
    "However, there is one complication here that makes the TEH approach not so obvious. The fact that the outcome is binary complicates things considerably. Because this is a bit counter intuitive, I rather show what happens first and then explain why it happens.\n",
    " \n",
    "## Simulating Some Data\n",
    " \n",
    "Let's keep this very simple, but still relatable. We will simulate the treatment, `nudge`, as being completely random, drawn from a Bernoulli with $p=0.5$. This means the treatment is assigned according to a fair coin. It also means there is no confounding we need to watch out for.\n",
    " \n",
    "$ nudge \\sim \\mathcal{B}(0.5) $\n",
    " \n",
    "Next, let's simulate the customers' covariates `age` and `income` following a Gamma distribution. These are the stuff you know about the customer and hence, you want to personalize based on them. In other words, you wish to find groups of customers defined by age and income in such a way that one group is highly responsive to the `nudge` treatment.\n",
    " \n",
    "$ age \\sim G(10, 4) $\n",
    " \n",
    "$ income \\sim G(20, 2) $\n",
    " \n",
    "Finally, we will simulate the conversion. For that, we will first **create a latent variable that follows a linear model** with random noise. Importantly, notice that `income` is highly predictive of $Y_{latent}$, but **it does not modify the treatment effect**. Put simply, nudge increases $Y_{latent}$ the same for all levels of `income`. In contrast, `age` only affects $Y_{latent}$ through its interaction with the `nudge` treatment. \n",
    " \n",
    "$Y_{latent} \\sim N(-4.5 + 0.001 \\ income + nudge + 0.01 \\ nudge \\ age, 1)$\n",
    " \n",
    "Once we have the $Y_{latent}$, we can simulate `conversion` by setting it to $Y_{latent}>x$. First, let's set `x=0` so that the conversion is roughly 50\\%. That is, on average 50\\% of customers convert to our product.\n",
    " \n",
    "$conversion = 1\\{Y_{latent} > 0\\}$\n",
    "\n",
    "\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [],
   "source": [
    "np.random.seed(123)\n",
    "\n",
    "n = 100000\n",
    "nudge = np.random.binomial(1, 0.5, n)\n",
    "age = np.random.gamma(10, 4, n)\n",
    "estimated_income = np.random.gamma(20, 2, n)*100\n",
    "\n",
    "latent_outcome = np.random.normal(-4.5 + estimated_income*0.001 + nudge + nudge*age*0.01)\n",
    "conversion = (latent_outcome > .1).astype(int)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Let's also  store everything in a DataFrame for convenience. Also, check that, indeed, the average conversion is close to 50%. "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "conversion             0.518260\n",
       "nudge                  0.500940\n",
       "age                   40.013487\n",
       "estimated_income    3995.489527\n",
       "latent_outcome         0.197076\n",
       "dtype: float64"
      ]
     },
     "execution_count": 5,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df = pd.DataFrame(dict(conversion=conversion,\n",
    "                       nudge=nudge,\n",
    "                       age=age,\n",
    "                       estimated_income=estimated_income,\n",
    "                       latent_outcome=latent_outcome))\n",
    "\n",
    "df.mean()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "As for the average treatment effect, since the treatment was randomized, we can estimate it as the simple difference in means between treated and control groups: $E[Y|T=1] - E[Y|T=0]$. So, let's see what those treatment averages look like. We will look at them for both the latent outcome and the conversion perspective. There is something important to see here."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>latent_outcome</th>\n",
       "      <th>conversion</th>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>nudge</th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>-0.505400</td>\n",
       "      <td>0.320503</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>0.896916</td>\n",
       "      <td>0.715275</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "       latent_outcome  conversion\n",
       "nudge                            \n",
       "0           -0.505400    0.320503\n",
       "1            0.896916    0.715275"
      ]
     },
     "execution_count": 6,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df.groupby(\"nudge\")[[\"latent_outcome\", \"conversion\"]].mean()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "1.4023163965477656"
      ]
     },
     "execution_count": 7,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "avg_treatment_effect(df, \"nudge\", \"latent_outcome\")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "0.39477273768476406"
      ]
     },
     "execution_count": 8,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "avg_treatment_effect(df, \"nudge\", \"conversion\")"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "The ATE for the latent outcome is pretty straightforward. From our data generating model, we know that this effect should be `1 + avg(age)*0.01`. And since the average age is about 40, this gives us an ATE of about 1.4. Where things get a bit more interesting (and complicated) is in the ATE for conversion. **Because conversion is bounded between 0 and 1, its ATE will not be linear**. Hence, we can't deduce it from an easy formula as we did with the latent outcome (there is a formula, but it is quite complicated). Let's just say the effect is smaller. And this makes sense right? I mean, there is no way the treatment could increase conversion by 1.4 points, simply because conversion can't go beyond 100% . Now, I want you to hold on to that fact because it is going to be crucial in understanding what we will see next. \n",
    " \n",
    "Let's talk about conditional average treatment effects (CATE) now. Looking at our data generating process, we know for a fact that `estimated_income` predicts conversion but does not modify the effect of the nudge on conversion. Therefore, segmenting our customers based on `estimated_income` will generate segments with the same treatment effect. In contrast, `age` only affects conversion by its interaction with the nudge. So, different age segments will respond very differently to the treatment, while different different income segments won’t. In other words, `estimated_income` should not be a good personalization variable while `age` should be.\n",
    " \n",
    "One way to see this is through the cumulative effect curve. The curve for `age` should start very far from the ATE and slowly converge to it, while the curve for `estimated_income` should only fluctuate around the ATE. This is exactly what we see when we plot the cumulative effect curve for the nudge effect on the latent outcome."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {
    "tags": [
     "hide-input"
    ]
   },
   "outputs": [
    {
     "data": {
      "image/png": "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WBISEsjIyAA8H5gtWrRosu8xQGJiIj/++CNOpxOttbfMTfl9rlLT+9qnTx/WrFmD1poffviBiIiIOjcdQYjOaN6yZQsvv/wyhmEwfPhwLr/88mCHVO927drFAw88QKtWrbzVzKuvvpoOHTrwz3/+k+zs7CY5XBFgx44dvPvuu0yfPp1jx44xZ84ciouLadOmDbfddhtWqzXYIdab/fv38/zzz+NyuUhOTmbq1KlorZv0e/z666+zYcMGzGYzZ511FlOmTCE3N7dJvc9z5sxh586dFBUV4XA4mDhxIueee+5J31etNS+++CJbt27FZrMxdepU2rVrV+d7h2RSEEIIcXIh13wkhBCiZpIUhBBCeElSEEII4SVJQQghhJckBSGEEF6SFIRogB5//HE+//xzwDPu/v777w9uQCJkhNyMZhGa/vSnP5Gfn4/JZMJut9OjRw9uvPFG7HZ7sEPj9ddf5+jRo9x+++3eYzNmzAhiRCKUSU1BhIx77rmHJUuWMGvWLH766SeWLVvm82u11hiG4cfohGgYpKYgQk58fDw9evTg4MGD/PDDD7zyyiscOnSIpKQkJk+eTJcuXQB46KGH6NSpEzt37uSnn35i9uzZVFZWsnjxYn766ScsFgsXXnghl19+OYZh8M477/DJJ59QUlJC165dufnmm4mKiiIzM5Np06YxdepUli5dSkVFBePGjePyyy/n22+/5a233gI8SyM3a9aMJ598koceeojBgwd7lwH/tcOHD7No0SJ++uknYmJimDRpEgMHDgzo71A0XZIURMjJzs7mm2++oWPHjsycOZNp06bRo0cPtm/fzuzZs5kzZ453sbE1a9YwY8YMUlNTqaio4M9//jMXX3wx99xzD263m0OHDgHwwQcf8NVXX/HQQw8RExPDSy+9xMKFC7njjju89921axdz584lIyODGTNm0LdvX3r06MFll112QvNRTcrLy3n00UeZOHEiM2bM4MCBAzz66KO0atWKFi1a+OX3JUKLNB+JkPHkk08yefJkHnjgAdLT00lISKBnz5706tULk8nEOeecQ7t27diyZYv3NcOGDaNly5aYzWY2b95MbGwsF198MTabjfDwcO8KpR9//DFXXXUVCQkJWK1WJkyYwBdffIHb7fZea8KECdhsNs466yxat27Nzz//fNpl2LJlC0lJSQwfPhyz2UybNm3o168fGzduPPNfkBBITUGEkL/97W+cc8453scLFy5k06ZNbN682XvM7XZ7m4+Aahsy5eTkkJKSctJrZ2Vl8dRTT1Vb495kMlXb4CY2Ntb7c1hYGOXl5addhqysLH788UcmT55cLeYhQ4ac9rWEOBlJCiJkJSQkMHjwYKZMmVLjOb/+kE9ISGDDhg01XuvWW2+lc+fOJzyXmZlZaxyns1lKQkIC6enpMkRV+I00H4mQNXjwYDZv3sy3337r3fd3x44d1TZh+rXevXuTl5fH+++/T2VlJWVlZd6tXM8//3xee+01srKyACgsLPR5n2CHw0FWVpZPo5t69+7NkSNHWLNmDS6XC5fLxZ49e7x9G0KcKakpiJCVmJjI3XffzauvvsrcuXMxmUy0b9+em2666aTnh4eHc99997F48WLeeOMNLBYL48aNo0OHDowdOxaARx99lLy8PBwOBwMGDPBpg5sBAwawdu1abrzxRpKTk5k1a1aN51bF8PLLL/Pyyy+jtaZ169b84Q9/qNsvQYjfkP0UhBBCeEnzkRBCCC9JCkIIIbwkKQghhPCSpCCEEMJLkoIQQggvSQpCCCG8JCkIIYTwkqQghBDC6/8D6FDYJ32jqEAAAAAASUVORK5CYII=\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "cumulative_effect_fn = cumulative_effect_curve(df, \"nudge\", \"latent_outcome\", min_rows=500)\n",
    "\n",
    "age_cumm_effect_latent = cumulative_effect_fn(prediction=\"age\")\n",
    "inc_cumm_effect_latent = cumulative_effect_fn(prediction=\"estimated_income\")\n",
    "\n",
    "plt.plot(age_cumm_effect_latent, label=\"age\")\n",
    "plt.plot(inc_cumm_effect_latent, label=\"est. income\")\n",
    "plt.legend()\n",
    "plt.xlabel(\"Percentile\")\n",
    "plt.ylabel(\"Effect on Latet Outcome\");"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Again, the latent outcome is very nice. Due to its linearity, our expectations match reality pretty closely. But in real life, we don't care about the latent outcome, nor can we observe it. All we have is conversion. And with conversion, the picture looks a lot more complicated. If we plot the cumulative effect curves, `age` still shows some treatment effect heterogeneity, starting above the ATE and slowly converging to it. This means that the higher the age, the higher the treatment effect. So far so good. This is what we would expect. "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {
    "tags": [
     "hide-input"
    ]
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "cumulative_effect_fn = cumulative_effect_curve(df, \"nudge\", \"conversion\", min_rows=500)\n",
    "\n",
    "age_cumm_effect_latent = cumulative_effect_fn(prediction=\"age\")\n",
    "inc_cumm_effect_latent = cumulative_effect_fn(prediction=\"estimated_income\")\n",
    "\n",
    "plt.plot(age_cumm_effect_latent, label=\"age\")\n",
    "plt.plot(inc_cumm_effect_latent, label=\"est. income\")\n",
    "plt.legend()\n",
    "plt.xlabel(\"Percentile\")\n",
    "plt.ylabel(\"Effect on Conversion\");"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "However, we also have A LOT of treatment effect heterogeneity by `estimated_income`. Customers with higher `estimated_income` have a much lower treatment effect, which causes the cumulative effect curve to start all the way at zero, to then overshoot the ATE, and only then to converge to it. This tells us that, as far as personalization is concerned, `estimated_income` will generate segments that have more treatment effect heterogeneity (TEH) compared to the segments we would get with `age`. \n",
    " \n",
    "This is inconvenient right? How come the feature we know to drive effect heterogeneity, `age`, is worse for personalization when compared with a feature (`estimated_income`) we know not to modify the treatment effect? The answer lies in the **non-linearity of the outcome function**. Although `estimated_income` does not modify the effect of the nudge on the latent outcome, it does once we transform that latent outcome to conversion (at least indirectly). Conversion is not linear. This means that **its derivative changes depending on where you are**. Since conversion can only go up to 1, if it is already very high, it will be hard to increase it further. In other words, the derivative at high conversion is very low. The same thing is true at the lower end: Because conversion is also bounded below at zero, it will also have a low derivative if it is already very low. Conversion follows an S-shape, with low derivatives at both ends, which we can see by plotting the average conversion by `estimated_income` bins (bins of width 100)."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {
    "tags": [
     "hide-input"
    ]
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<AxesSubplot:xlabel='estimated_income_bins'>"
      ]
     },
     "execution_count": 11,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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jzN//nwOHz6M1Wrl3nvvZcCAARQUFPDpp5+yefNmADp27Mif/vQnqlWrxt69e3n33Xe59957Wb58ORaLhcceewyr1cpHH31EZmYmffv2dX17NwyDZcuWsXr1as6dO0eLFi144oknLnoG/qWsXbuWRYsWobWmT58+9OvXDyh+LMSpU6cYM2aM6whv5MiRxMXFkZ+fT+/evV3rv9znL6qw6xquR1RqRUVF+tlnn9WLFi3SBQUF+tSpU3rUqFF6x44desKECXr9+vVaa63Pnz+vDxw4oLXW+vTp0zomJkYXFha6lrN27Vr94osvul7HxMTov/3tb/rcuXP62LFj+sEHH9SvvPKKPnXqlD537pweO3asXrt2rdZa68zMTL1582adm5urc3Jy9NSpU/Xf/vY317Jeeukl10hiv2YZPny4XrNmjS4sLNSHDx/WsbGx+vjx41prradNm6anTp2qz58/r48ePaqfeOKJEtkuJyYmRicnJ2uttZ4xY4Z+9NFHdWJioi4sLNRvv/22njZtmta6eFS8xx9/XC9btkzn5eXpnJwcffDgQa211p999pmeMGGCPnPmjD579qx+4YUX9MKFC7XWWu/Zs0cPHjzY1dbffvutjo2N1dOnT9c5OTn62LFjesiQIfr06dNaa61XrlypJ0yYoNPS0nR+fr6ePXu2K8Pl/PrZTJs2zbX9sbGxeteuXVprrePi4vTbb79dYt5//OMfOi8vTx85ckQ/+OCDrna83Ocvqi7pJvJihw4dIjMzk4EDB2K1WgkJCaFHjx4kJCRgtVo5deoUmZmZVK9enWbNml3Vsvv160dAQABhYWGEhYXRsmVLQkJCCAgIoE2bNvz8888A1KhRgw4dOuDn54e/vz8DBgxg//79l13u9u3bqV27NlFRUfj4+HDTTTfRvn17Nm/ejGEYfP/99wwePJjq1avTsGFD18hRV6tdu3Y0adIEHx8funTp4sq7bds2atasSd++ffH19cXf39/1COuNGzdy//33ExwcTFBQEAMHDuS7775zLdPHx4cBAwZgtVrp3LkzWVlZ9OrVC39/f8LCwmjQoIFrPd9++y0PPPAAdrudatWqERMTw/fff3/Zk8MXiomJcW1/VFQUmzZtKnVeX19fbrzxRho1asTRo0cBrvvzF5WPdBN5sdTUVDIyMlxdPlDcPfGHP/yB4cOHExcXx7hx46hTpw4DBw6kbdu2V7zsmjVruv7v6+t70eszZ84AkJeXx0cffcTOnTs5d+4cAOfPn8cwDCyWi7+rpKamkpiYWCJzUVERd955J5mZmRQVFZUY5al27dqlFpcrye/n50dubi5Q/Gz4X5+i+XtOp5PatWuXWPeFI0zVqFHDtU2+vr5A8TPsf+Xr6+taT2pqKm+++WaJJ01aLBbOnj3r9tn0F26/w+Hg2LFjV72d1/v5i8pHioEXczgc1KlTh3feeeeS08eOHYthGPznP//hrbfeYs6cOWU++tLy5cs5efIkr732GjVr1uTnn3/m2WefRf/3Ybq/X5/dbqd58+aXvFzUMAx8fHxIT0+nfv36ACUGBSkLdrudhISES06z2WykpqYSFhbmWve1DsBit9sZMWIEt9xyy1X/7O+3/9ehFK9G3bp1L/n5V69e/aqXJSoH6SbyYk2aNMHf35+lS5eSn5+PYRgcO3aMpKQkNmzYQGZmJhaLxTUcqMViISgoCKVUmV2Tn5ubi6+vLwEBAWRnZ7No0aIS04ODg0usq23btiQnJ7NhwwYKCwspLCwkKSmJEydOYLFYaNeuHYsWLSIvL48TJ064BgspK23btiUjI4OVK1dSUFDA+fPnSUxMBKBz584sXryYzMxMMjMz+fzzz6/5ktu77rqLzz77jNTUVAAyMzOvaFBzgC+++IK8vDyOHz/OunXrXCfXr8blPn9RdcmRgRezWCw899xzfPzxx4waNYrCwkLq1avH4MGD2blzJx9//DF5eXnUrl2bp556ytW1MWDAACZOnEhRURETJky4rgy9evXinXfeYdiwYdhsNvr06VPij16vXr2YOXMm3377LV27diU2NpYXX3yRjz76iI8++gitNY0aNXJd6TJs2DBmzZrFE088Qb169YiMjGTv3r3XlfFC/v7+vPjii8yfP5/PP/8cq9VK7969adq0KQMGDCAnJ4dnnnkGKB4G81qv7e/VqxcAkyZNIiMjg+DgYDp27Oga/ao0zZs3Z8yYMRiGQd++fa/4iqoLlfb5i6pJBrcRQggh3URCCCGkm0h4if379/Paa69dclplehTFd999x/vvv3/R+7Vr1+att94yIZGoKqSbSAghhHQTCSGEkGIghBACKQZCCCGQYiCEEAL4f+8PiA4pptOsAAAAAElFTkSuQmCC\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "(df\n",
    " .assign(estimated_income_bins=(df[\"estimated_income\"]/100).astype(int)*100)\n",
    " .groupby(\"estimated_income_bins\")\n",
    " [[\"conversion\"]]\n",
    " .mean()\n",
    " .plot()\n",
    ");"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Notice how the slope (derivative) of this curve is very small when conversion is very high. It is also small when conversion is very low (although that is harder to see due to the small sample in that region). With this information, we can now explain why `estimated_income` generates segments with high treatment effect heterogeneity. \n",
    " \n",
    "Since `estimated_income` is highly predictive of conversion, we can say that customers with different `estimated_income` are located in different places along the S-shaped conversion curve. Customers with very high or very low `estimated_income` fall at the extremes of the curve, where the derivative is lower, meaning that increasing conversion is harder, which in turns means that the treatment effect is likely to be small. On the other hand, customers with reported income in the middle of the range also fall in the middle of the conversion curve, where the derivative is higher and, hece, the treatment effect will likely also be higher. I say likely because, in theory, it is possible for a variable to have such a strong effect modification force that it dominates the change in derivative we see as we traverse the conversion curve. However, at least from my experience, the curvature of the S shaped conversion tends to dominate every other effect modification we have. \n",
    " \n",
    "It's not just me, though. Here is a slide from Susan Atheys' presentation at the Columbia Data Science Institute. Here, she is discussing the effect of a nudge to get students to apply for federal financial aid in order to pay for college. It's also a conversion problem. What she finds is that the best strategy is to target those students that are already likely to convert. She also says it is a bad idea to target those with low probability of conversion\n",
    " \n",
    "![image.png](data/img/hte-binary-outcome/slide-susan-athey.png)\n",
    " \n",
    "Wait a minute! That is not what you said above! You said that treatment effects were low away from the middle, towards the low and the high ends!\n",
    " \n",
    "True. However, in real life, conversion rarely spams the entire S-shaped curve. What we usually have is everyone smooshed at one or the other end of the curve. In business terms, your average conversion is rarely 50%. More often than not, it is something like 70 to 90% or something like 1 to 20%. In these more likely situations, targeting those with a high baseline can be a good or a bad idea. \n",
    " \n",
    "Here is what I mean: Let's take the same latent outcome from before, but now generate a situation where conversion is low on average, by setting it to `latent_outcome > 2`. Next, let's craft a situation where conversion is high by setting `latent_outcome > -2`."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Avg. Low Conversion:  0.12119\n",
      "Avg. High Conversion:  0.9275\n"
     ]
    }
   ],
   "source": [
    "df[\"conversion_low\"] = conversion = (latent_outcome > 2).astype(int)\n",
    "df[\"conversion_high\"] = conversion = (latent_outcome > -2).astype(int)\n",
    "\n",
    "print(\"Avg. Low Conversion: \", df[\"conversion_low\"].mean())\n",
    "print(\"Avg. High Conversion: \", df[\"conversion_high\"].mean())"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Based on what we know about the non linearity of conversion, we can already predict what will happen. For the low conversion situation, targeting those with high baseline conversion (high `estimated_income`) will be much more effective. That's because we are at the left side of the S shaped conversion curve, where the derivative will be smaller the lower the baseline conversion. In this region, **high baseline conversion will translate to high treatment effect**. Therefore, we should nudge those with high baseline conversion, which will be those with higher `estimated_income`."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {
    "tags": [
     "hide-input"
    ]
   },
   "outputs": [
    {
     "data": {
      "image/png": "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meonn3yiLlu2TFVVVV22bJn6ySefuDBK5/jmm2/UuXPnqi+//LKqqqo6Z84cdePGjaqqqup7772nrly50pXhNbl//etf6urVq1VVVdXa2lq1vLy8TV/noqIidfz48Wp1dbWqqrbr++OPP7a567xnzx718OHD6mOPPWZ/7kLXdevWrerMmTNVq9WqHjhwQJ06dWqjP1eaoU47dOgQERERhIeHo9Pp6N+/P1u2bHF1WE0uJCTE/peFj48P7dq1w2QysWXLFgYNGgTAoEGD2lzZi4qK2LZtG0OGDAFAVVX27NnDlVdeCcA111zTpspcUVHBvn37GDx4MAA6nQ4/P782f52tVis1NTVYLBZqamoIDg5uc9e5S5cu59QGL3Rdf/vtN66++moURSE5OZlTp05RXFzcqM9tvXWxJmYymTAYDPbHBoOB9PR0F0bkfPn5+Rw5coSkpCROnjxJSEgIAMHBwZw8edLF0TWtDz/8kDvvvJPKykoAysrK8PX1RavVAqDX6zGZTK4MsUnl5+cTGBjI/PnzOXbsGO3bt+fuu+9u09dZr9dz4403Mm7cODw9PenRowft27dv09f5jAtdV5PJhNFotB9nMBgwmUz2YxtCahZuqqqqijlz5nD33Xfj6+tb5zVFUVAUxUWRNb2tW7cSFBTU+LbaVshisXDkyBGGDh3Kq6++ipeXF19++WWdY9radS4vL2fLli3MmzeP9957j6qqKrZv3+7qsJqds66r1CxO0+v1FBUV2R8XFRWh1+tdGJHzmM1m5syZw8CBA+nbty8AQUFBFBcXExISQnFxMYGBgS6OsukcOHCA3377jd9//52amhoqKyv58MMPqaiowGKxoNVqMZlMbep6GwwGDAYDHTp0AODKK6/kyy+/bNPXedeuXYSFhdnL1LdvXw4cONCmr/MZF7quer2ewsJC+3GXcl+TmsVpiYmJ5OTkkJ+fj9lsZtOmTaSkpLg6rCanqirvvvsu7dq1Y8SIEfbnU1JSWL9+PQDr16+nd+/ergqxyd1xxx28++67zJs3j0ceeYRu3boxadIkunbtyubNmwFYt25dm7rewcHBGAwGsrOzAduNNDo6uk1fZ6PRSHp6OtXV1aiqai9zW77OZ1zouqakpPDTTz+hqioHDx7E19e3UU1QIDO469i2bRsfffQRVquV1NRUbrnlFleH1OT279/PM888Q2xsrL2q+pe//IUOHTrwxhtvUFhY2CaHVJ6xZ88evvnmG6ZMmUJeXh5z586lvLychIQEJk6ciIeHh6tDbDJHjx7l3XffxWw2ExYWxvjx41FVtU1f588//5xNmzah1WqJj4/nwQcfxGQytanrPHfuXPbu3UtZWRlBQUHcdttt9O7d+7zXVVVVFixYwI4dO/D09GT8+PEkJiY26nMlWQghhKiXNEMJIYSolyQLIYQQ9ZJkIYQQol6SLIQQQtRLkoUQQoh6SbIQohV56aWXWLduHWCbM/D000+7NiDhNmQGt3BrDz30ECUlJWg0Gry9venZsyf33nsv3t7erg6Nzz//nNzcXCZNmmR/btq0aS6MSLgzqVkIt/fkk0/yySef8Morr5CRkcHSpUsdPldVVaxWqxOjE6JlkJqFEKfp9Xp69uxJZmYmBw8e5OOPPyYrK4vQ0FDuvvtuunbtCsCMGTPo2LEje/fuJSMjgzlz5lBbW8uHH35IRkYGOp2O66+/nltuuQWr1crXX3/NmjVrOHXqFN26deP+++/H39+f/Px8JkyYwPjx41myZAk1NTUMHz6cW265he3bt7Ns2TLAtvx0REQEs2fPZsaMGQwcONC+1PofnThxgoULF5KRkUFgYCBjxoyhf//+zfozFG2XJAshTissLOT3338nOTmZWbNmMWHCBHr27Mnu3buZM2cOc+fOtS/Q9tNPPzFt2jSioqKoqanh4Ycf5sYbb+TJJ5/EYrGQlZUFwIoVK9iyZQszZswgMDCQRYsW8cEHH/DII4/YP3f//v28+eabZGdnM23aNPr06UPPnj25+eabz2mGupCqqipefPFFbrvtNqZNm8bx48d58cUXiY2NJTo62ik/L+FepBlKuL3Zs2dz991388wzz9ClSxcMBgOXX345vXr1QqPRcNlll5GYmMi2bdvs51xzzTXExMSg1WrZunUrwcHB3HjjjXh6euLj42Nf7fWHH37g9ttvx2Aw4OHhwejRo/n111+xWCz29xo9ejSenp7Ex8cTFxfHsWPHGlyGbdu2ERoaSmpqKlqtloSEBPr27csvv/xy6T8gIZCahRD885//5LLLLrM//uCDD9i8eTNbt261P2exWOzNUECdjbKKiooIDw8/73sXFBTw2muv1dlfQKPR1Nl0KDg42P69l5cXVVVVDS5DQUEB6enp3H333XVivvrqqxv8XkKcjyQLIf7EYDAwcOBAHnzwwQse88ebv8FgYNOmTRd8r3HjxtGpU6dzXsvPz79oHA3ZwMZgMNClSxcZSiucRpqhhPiTgQMHsnXrVrZv327f03nPnj11Nsf6oyuuuILi4mK+++47amtrqaystG/Je+211/LZZ59RUFAAQGlpqcN7QAcFBVFQUODQaKsrrriCnJwcfvrpJ8xmM2azmUOHDtn7ToS4VFKzEOJPjEYjkydPZvHixbz55ptoNBqSkpK47777znu8j48P06dP58MPP+Q///kPOp2O4cOH06FDB2644QYAXnzxRYqLiwkKCqJfv34ObTrUr18/NmzYwL333ktYWBivvPLKBY89E8NHH33ERx99hKqqxMXF8fe//71xPwQh/kT2sxBCCFEvaYYSQghRL0kWQggh6iXJQgghRL0kWQghhKiXJAshhBD1kmQhhBCiXpIshBBC1EuShRBCiHr9f4vKdZOU8I/8AAAAAElFTkSuQmCC\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "cumulative_effect_fn = cumulative_effect_curve(df, \"nudge\", \"conversion_low\", min_rows=500)\n",
    "\n",
    "age_cumm_effect_latent = cumulative_effect_fn(prediction=\"age\")\n",
    "inc_cumm_effect_latent = cumulative_effect_fn(prediction=\"estimated_income\")\n",
    "\n",
    "plt.plot(age_cumm_effect_latent, label=\"age\")\n",
    "plt.plot(inc_cumm_effect_latent, label=\"est. income\")\n",
    "plt.xlabel(\"Percentile\")\n",
    "plt.ylabel(\"Effect on Conversion\");\n",
    "plt.legend();"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Just like we predicted, those with high `estimated_income`, which translates to high baseline conversion, have a much higher treatment effect. \n",
    " \n",
    "Now, for the other situation where conversion is high, on average, those with **high baseline conversion will have a lower treatment effect**. Hence, it is a bad idea to target those with high `estimated_income`. We can see this by the inverted cumulative effect curve, which shows those with high `estimated_income` as having a lower treatment effect."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {
    "tags": [
     "hide-input"
    ]
   },
   "outputs": [
    {
     "data": {
      "image/png": "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nFZcXMx3331HSkoKCxcu5L777mPo0KHs3buXxYsXs2TJkroJ2jZt2sT8+fOJj4/Hbrfz+9//nmuuuYaHHnoIl8tFbm4uAJ9++inbt2/niSeeICwsjJUrV/Lmm28yZ86cuvP+8MMPvPTSS+Tl5TF//nwuvvhihg4dynXXXXdWM1RjrFYrTz/9NDfccAPz58/n+PHjPP300yQlJZGQkOCV90t0L9IMJbq9559/nltvvZXHHnuMAQMGYDabueiiixg2bBg6nY7BgweTnJzMrl276o4ZP348iYmJ6PV6du7cSUREBNdccw3+/v4EBQXVzfb6xRdfcOONN2I2m/Hz82PatGls27YNl8tV91rTpk3D39+f3r1706tXL44dO9bsMuzatYvo6GjS09PR6/X06dOHkSNH8s0337T+DRICqVkIwYMPPsjgwYPrHr/55pts3bqVnTt31j3ncrnqmqGAegtllZSUEBsb2+BrFxUVsWjRonrrC+h0unqLDkVERNT9PyAgAKvV2uwyFBUVcfDgQW699dZ6MY8bN67ZryVEQyRZCPELZrOZsWPHcvfddze6z88//M1mM1lZWY2+1j333EP//v3P2lZYWHjOOJqzgI3ZbGbAgAEylFZ4jTRDCfELY8eOZefOnWRnZ9et6bxv3756i2P93PDhwykrK+M///kPDoeD2trauiV5L7vsMt59912KiooAqKys9HgN6PDwcIqKijwabTV8+HDy8/PZtGkTTqcTp9NJTk5OXd+JEK0lNQshfiEqKoo//elPvPPOO7z00kvodDr69evHHXfc0eD+QUFBPPLII7z11lv885//xGAwMGnSJM477zyuvvpqAJ5++mnKysoIDw9n9OjRHi06NHr0aL7++mtuv/12YmJieO655xrd90wMb7/9Nm+//TaaptGrVy9+97vftexNEOIXZD0LIYQQTZJmKCGEEE2SZCGEEKJJkiyEEEI0SZKFEEKIJkmyEEII0SRJFkIIIZokyUIIIUSTJFkIIYRo0v8HGqn1BoVexM4AAAAASUVORK5CYII=\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "cumulative_effect_fn = cumulative_effect_curve(df, \"nudge\", \"conversion_high\", min_rows=500)\n",
    "\n",
    "age_cumm_effect_latent = cumulative_effect_fn(prediction=\"age\")\n",
    "inc_cumm_effect_latent = cumulative_effect_fn(prediction=\"estimated_income\")\n",
    "\n",
    "plt.plot(age_cumm_effect_latent, label=\"age\")\n",
    "plt.plot(inc_cumm_effect_latent, label=\"est. income\")\n",
    "plt.xlabel(\"Percentile\")\n",
    "plt.ylabel(\"Effect on Conversion\")\n",
    "plt.legend();"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "To summarize, what we saw is that when the outcome is binary, the treatment effect tends to be dominated by the curvature (derivative) of the S-shaped function.\n",
    " \n",
    "![image.png](data/img/hte-binary-outcome/logistic.png)\n",
    " \n",
    "For instance, in our conversion problem, if the **average conversion is low**, we are at to the left of the logistic curve and the **treatment effect will be higher at high baseline conversion**. This would translate to a nudge policy that advocates for treating (nudging) those customers with an already high probability of conversion. On the other hand, if the **average conversion is high**, we will be to the right side of the logistic curve, where the derivative (and hence the treatment effect) will be **higher for those customers with lower baseline conversion**. \n",
    " \n",
    "This is certainly a lot to remember, but we can simplify: **just treat whomever is closer to a baseline conversion of 50%**. The mathematical argument here is pretty solid: the derivative of the logistic function is at its peak at 50%, so just treat units closer to that point. \n",
    " \n",
    "What is even nicer is that this is one of the rare cases where received wisdom matches the math. In marketing, where conversion problems are very common, there is a belief that we should target neither lost bets (those with very low conversion probability) nor sure wins (those with very high conversion probability). Instead, we should target those in the middle. This is fascinating, since it is the exact same thing we figured using a more formal causal argument. "
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Continuous Treatment and Non-linearity\n",
    " \n",
    "We've explored in depth just one example of binary outcome making Heterogeneous Treatment Effect analysis harder. But this phenomenon goes beyond the conversion problem from marketing. For instance, in 2021, the world managed to deliver the first batch of approved COVID-19 vaccines to the general public. Back then, a crucial question was who should receive the vaccine first. This is, not surprisingly, a Heterogeneous Treatment Effect problem. Policy makers would like to vaccinate those who would benefit the most first. In this situation, the treatment effect is averting death or hospitalization. So, whose death or likelihood to be hospitalized would decrease the most when given a shot? In most countries, it was the elderly and those with pre-existing health conditions (comorbidities). These are people that are **more likely to die when infected with COVID-19**. Also, COVID mortality rate is (thankfully!) much lower than 50%, which puts us to the left of logistic function. In this region, by the same argument we made for marketing, it would make sense to treat those with a high baseline probability of death when getting COVID-19, which are precisely the groups we’ve mentioned earlier. Is this a coincidence? Maybe. Keep in mind that I'm not a health expert, so I might be very wrong here. But the logic makes a lot of sense to me. \n",
    " \n",
    "In both cases, marketing nudges and COVID-19 vaccines, **the key complicating factor for Treatment Effect Heterogeneity is the non-linearity of the outcome function** $Y(0)$. This nonlinearity makes it so that, as we go from $Y(0)$ to $Y(1)$, the increase in the outcome is primarily due to the curvature in the outcome function. We saw how this happened with a binary outcome, where $E[Y|X]$ follows a logistic shape. But this is more general. In fact, it is a problem that keeps popping up in business, especially if the treatment is a continuous variable. Let's go through one last example to drive the point home.\n",
    " \n",
    "Let's consider the classic pricing problem. You are working for a streaming company like Netflix or HBO. A key question the company wants answered is what price to charge customers. In order to answer the question, they run an experiment in which they randomly assign customers to differently priced deals: 5 BLR/month, 10 BRL/month, 15 BRL/month or 20 BRL/month. By doing so, they hope to answer not just how sensitive customers are to price increases, but also if some types of customers are more sensitive than others. In the plot below, you can see the results from that experiment broken down by two customer segments: `A`, customers with higher estimated income, and `B`, customers with lower estimated income. "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "metadata": {
    "tags": [
     "hide-input"
    ]
   },
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAf0AAAEaCAYAAAAbjY6yAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjQuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/MnkTPAAAACXBIWXMAAAsTAAALEwEAmpwYAABYb0lEQVR4nO3deXhTxfoH8O+cJM3aLQ2ldKFQ9r1ASwsoIBYXcEO56AW84AUVQVDwJ5tXK7IIKIIgigqigIpeNhVFsQKiciktUJaWfbOs3fc95/39kTY0dKHQJU37fp6HB3KSc847Cck7Z2bOjCAiAmOMMcYaPMneATDGGGOsbnDSZ4wxxhoJTvqMMcZYI8FJnzHGGGskOOkzxhhjjQQnfcYYY6yR4KTP6j0hBNavX1+r52jRogXmzp1bq+e4HZ9//jmUSmWdnCs6OhrNmjVDdnZ2tY7z/PPP45VXXrnl69588020bt26WudijN0ZTvoN0OXLl6FWq+Ht7Y2ioiK7xXHx4kWMHj0afn5+UKvV8PLyQlhYGH799Ve7xVTXxowZAyEEhBBQKpXw9/fH+PHjkZycXOl+Tz75JC5fvlwnMU6ZMgXTpk2DXq8HYPnc7rnnHuj1egQFBeHw4cM2r//ggw/w4IMPljnOG2+8gZUrV+LcuXN1EndF1q9fj379+sHV1RV6vR6dO3fGtGnTavT9HDduHAYMGFBjx6trjem7qVQq8fnnn9s7jHqDk34DtHr1ajz00ENwc3PDDz/8YJcYCgsLERYWhvj4eHz11Vc4deoUvv/+e9x33323THgNzd13342rV6/iwoULWLZsGTZt2oR//etf5b6WiFBYWAitVoumTZvWemxRUVGIiorCmDFjrNteeeUVmEwmHD58GL1798a4ceOsz124cAFvv/02PvnkkzLH8vHxwb333osPP/yw1uOuyNixYzF27Fj069cP27dvR1xcHJYtW4Zr165h8eLFdovLHmRZhtlsLrOdv5uNHLEGxWw2U/Pmzen777+nBQsW0AMPPGB97pNPPiEXFxfKzc212WfBggXk5+dHZrOZiIgiIiKoc+fOpFarqUuXLrR7924CQOvWratyHIcOHSIAdPTo0Upf9+WXX1KvXr3IxcWFPDw8aPDgwXTy5Emb19x87szMTJo8eTJ5e3uTVqulwMBA2rRpk80+8+bNo5YtW5KTkxOZTCa67777KCcnp8I4/P39adasWTR27FhydnYmDw8PmjlzpvU9CQ8Pp7Zt25bZ75lnnqGBAwdWeNzRo0fTvffea7Nt7ty5JEkS5eTk0Jo1a0ihUNDOnTspMDCQVCoV/fTTT9btpUVHR9P9999Pzs7OpNfrKTg4mPbt22d9fseOHdSnTx/SaDTk7e1NY8aMoaSkpApjIyJ66aWXaNCgQTbbOnbsSNu3byciori4ONLpdNbnwsLC6OOPP67weJ999hl5eXlVes7w8HBq1aoVffnll9SyZUtSq9UUFhZG58+fJyKis2fPkhCC/vrrL5v9fv/9d5IkiS5cuFDucTdu3EgA6Ouvvy73+ZSUFCKict/b+Ph4AkC7du0iIqKCggKaMmUK+fj4kJOTE3l5edGTTz5pjR+AzZ81a9YQEdGVK1foySefJFdXV9JoNNS/f3+KioqynmfXrl0EgH788UcKDQ0ljUZDPXr0oGPHjtGxY8eob9++pNVqKTg4mGJjY21ijI6OpkGDBpFeryeTyURDhw61eS9K3tcNGzZQu3btSKFQUFxcXJn3oarfzYKCAgoPD6cWLVqQWq2mjh070sqVK21ec+7cORo0aBCp1Wry9fWlDz74gPr3709jx461vsbf35/+85//0Pjx48nV1ZWaNGlCy5cvp7y8PHrxxRfJzc2NvL29afny5TbHvtX3/Pz58wSAvvnmGxoyZAhptVpq2bKl9bMoOffNn1Vjx+9AA7Nt2zZq2rQpFRYW0uXLl0mlUll/TNPS0kij0dCGDRts9unYsSPNnDmTiIguXbpEWq2Wxo4dS7GxsRQREUHdu3e/7aR/+fJlkiSJwsPDKT8/v8LXffbZZ/T999/TmTNn6ODBg/Twww9T69atbfYpfW5ZlmnAgAHUv39/+uOPP+js2bP08ccfk0qlooiICCIi2rRpEzk7O9P3339PFy9epEOHDtGSJUtumfSdnZ3p9ddfpxMnTtDatWtJp9PR0qVLiciSFBQKBe3evdu6T0ZGBun1+jLvZ2nlJf3FixcTAMrIyKA1a9aQEIKCg4Np586ddPbsWUpISCiTmI4dO0Y6nY6eeuopioqKolOnTtFXX31Fe/fuJSKi3377jbRaLS1btoxOnTpF+/fvpwEDBlC/fv1IluUK4wsMDKTXXnvNZts///lPeumll8hsNtO7775LvXv3JiKiTz/9tNIKDhFRbGwsASg32ZQIDw8nnU5Hffv2paioKNq/fz/16tWLunfvbo31vvvuozFjxtjsN2rUKJtK7M0effRRat26daXxEVUt6S9evJh8fHxo165ddPHiRdq/fz8tWbKEiCzJaMSIEdS7d2+6evUqXb16lXJyckiWZerVqxd169aN/vjjDzpy5AgNHz6c3NzcKDExkYhuJP3AwED67bffKDY2lkJDQ6lLly509913U0REBMXFxVHfvn2pV69eNu+rXq+nN954g44fP05HjhyhYcOGUZs2bayV+PDwcNJqtdSvXz/at28fnTx5kjIyMsqUv6rfzdGjR1OXLl3ol19+oXPnztGGDRvI1dWVVq1aRUSW72K3bt2oV69eFBkZSYcOHaIHH3yQXFxcyiR9V1dXWrx4MZ0+fZrmzJlDAOjBBx+0bps/fz4JIawVnap8z0uSfsuWLembb76h06dP08yZM0mhUFgvHBISEkihUNDSpUutn1Vjx0m/gXnkkUdo6tSp1sf333+/zY/6k08+SYMHD7Y+joqKIgB04sQJIiKaNWsW+fv7U1FRkfU127dvv+2kT0T00UcfkV6vJ41GQ3369KFp06bR/v37K90nOTmZANCff/5p3Vb63Lt27SK1Wk1paWk2+z3zzDP06KOPEhHRe++9R23atKGCgoIqx+rv70933XWXzbaZM2eSr6+v9fHDDz9MI0eOtD5euXIlmUymW/5wlk76sbGxFBAQQCEhIURkSUAAaM+ePTb73ZyYRo0aRV27drW2PNysf//+NH36dJttFy9eJAB06NChCuNzdXWlDz/80Gbb5cuX6ZFHHiE/Pz8aOHAgHT9+nC5dukTe3t507tw5mjdvHrVt27ZMSwMRUXp6OgGgbdu2VXjOkivl06dPW7edPHmSANhU3HQ6HaWnpxMRUWpqKmm1Wtq8eXOFx+3QoQM9/PDDFT5foipJf/LkyXTPPfdUWGEaO3Ys9e/f32ZbREQEAbC5Qs/LyyMvLy+aPXs2Ed1I+lu2bLG+5ttvvyUAtHHjRuu2zZs3EwDKzMwkIsv/o5KWhtLH1mq11mOFh4eTEIIuXrx4y/fgVt/Nc+fOkRCCjh8/brPf7NmzqVu3bkRkaVm6+XNMTk62XjSU8Pf3t343iSytkc7OzvTQQw/ZbHNzc7Ne7Vfle16S9BcvXmx9vqioiAwGg02LhEKhsLn6b+y4T78BuXz5Mn788Ueb/tnRo0fjs88+sw7oGz16NHbs2IGEhAQAwNq1a9GrVy+0a9cOABAXF4fg4GAoFArrMXr37n1H8YwfPx7Xrl3Dpk2bMGjQIPz+++8ICQnBwoULra+JiYnB0KFD0bJlSzg7O6N58+YALAONyhMVFYWCggL4+PjAYDBY/6xfvx6nT58GAAwfPhyFhYXw9/fHmDFjsG7dOmRmZt4y3pvL2bdvX1y6dAkZGRkALKPTN23ahNTUVADAp59+itGjR8PJyanS4+7evRsGgwFarRadO3dGQEAAvvrqK5vXBAcHV3qMAwcO4N5774Uklf+VjYqKwtKlS23ek44dOwKA9X0pT25uLjQajc02b29vfPfdd/j777/x22+/oX379hg/fjxmzJiB48ePY+3atYiMjER4eDiGDRuGgoIC674lx8rNza20PE2aNLEZwd+2bVuYTCbExsYCAB555BG4urriyy+/BGAZnOfq6oqHH364wmNSDa4d9swzz+Do0aNo3bo1xo8fj02bNtmUszyxsbHw8PCwvu8AoFarERISYi1XiW7duln/7eXlBQDo2rVrmW0l39OoqChs2bLF5vP18PBAXl6ezefbtGlT63eoMrf6bkZHR4OIEBQUZHPO+fPnW88XFxcHk8lk8zkajUbrb0lF5ZUkCU2aNLEpryRJ8PT0tCnvrb7nJQIDA63/VigU8PT0xPXr12/5HjRWdXNPEKsTq1evhtlsRvfu3W22m81m/PDDDxg6dCjuu+8+mEwmfPXVV5g4cSI2bNiAN9980+b1Qogai8lgMGDw4MEYPHgw3nzzTYwbNw5vvPEGpkyZgqKiItx333246667sGbNGuvAtU6dOlX4AyvLMlxdXREVFVXmuZLk6+PjgxMnTmDXrl3YuXMn5syZg+nTpyMyMhJ+fn53XJYHH3wQnp6eWLduHfr164cDBw5Yk1JlQkJC8MUXX0CpVMLb27tMJUGhUJRJvLdLlmVMnz4dTz/9dJnnShJIeZo0aYKUlJRKj71+/XqkpaXhxRdfxCuvvIKHH34Ybm5uGDJkCHJzc3Hy5El06dIFAKzHatKkSTVKYxlxPXbsWHz66ad44YUXsGrVKjzzzDOV3sbYrl27Msm1POVVnAoLC20eBwYG4vz58/j111+xa9cuvPTSS3j99dexb98+uLi43H6BbqJSqaz/Lvm+lbdNlmXr308//TRmzJhR5lgeHh7Wf5fcgVEVlX03S867d+9e6HQ6m/1K/z5U9beidNlK9itvW+ny3up7XtHj0sdhZXHSbyBkWcbq1asxa9Ys/POf/7R5bv78+fjkk08wdOhQKBQKjBw5EuvWrUNAQADS09Px1FNPWV/bsWNHfPXVVzCbzdar/X379tVYnB06dEBBQQHS09Px999/IzExEfPmzUOHDh0AWH5kKrtiCwoKQlpaGvLy8tC5c+cKX6dWq/HAAw/ggQcewJw5c9C0aVNs3boVkyZNqnCfm8u5d+9e+Pj4WH/kJUnCs88+i08//RQnT55Ev379yr2quZlWq632fek9e/bEb7/9BlmWy01aQUFBiI2Nve3z9OjRo9JEef36dcycORM7d+60/piW/KASEYqKimx+YI8ePQqFQlGm4nmzxMREnD17Fq1atQIAnDp1CklJSTZXyePGjcP8+fOxcuVKHDlyBJs3b670mKNGjcI//vEPbNiwweb/dInU1FS4u7vD09MTZrMZ169ft1Y0Dx48WOb1BoMBQ4cOxdChQzFr1iw0a9YMv//+Ox5++GE4OTmVGRnfqVMnJCcnIy4uzlqO/Px8REZGYsKECZXGfitBQUE4cuQIWrVqVaOV8tJKfzd79uwJAPj777/x0EMPlfv6jh07lvkcU1NTcerUKev+d6qq3/OqKO+zatTs27vAasq2bdsq7M/75ZdfSJIk64C+w4cPWwcTPf744zavLRnI9+yzz1JcXBzt3LmTevbsSQBo/fr11tcNHDiQZsyYUWE8Bw8epIceeoi++eYbOnr0KJ09e5Y2bNhAnp6e1LdvXyIiSkxMJLVaTS+88AKdOXOGIiIiKCgoiIQQNn1wuGkgX1hYGLVp04a2bNlCZ8+epejoaFq2bBl98sknRES0atUq+uSTTygmJoYuXLhAq1evJkmSrP3F5SkZyBceHk4nT56kL7/8kvR6Pb333ns2r7ty5QoplUpycnKyeT8qUt5AvtLK618ub/uRI0dIq9VaB/KdOXOGvv32W+tAvp07d5JSqaQpU6bQoUOH6MyZM7R9+3b697//XekAxo8++ohatWpV4fNPPPEEvfPOO9bHmzZtIm9vb4qOjqalS5dS06ZNbe4GmTVrVpm+7puVDOS7++67KSoqiqKioig0NJQCAwPL9KEPHjyYnJycKCwsrNJjlvjXv/5FTk5O9J///If27t1LFy9epN27d9OYMWNoypQpRGTpd3Z2dqYxY8bQqVOnaPv27dS1a1ebPv1FixbR+vXr6dixY9ZxDAqFwjr2ZdGiRWQymejYsWOUmJhIeXl5NgP5/vzzTzp69GiFA/ni4+OtMf/xxx8EwPr9JCL63//+Z9NfHhcXRwaDgUaMGEGRkZF07tw52rlzJ02ePJnOnj1rfV8r+yxLVOW7SUT073//m7y8vGjt2rV0+vRpiomJodWrV9OCBQuI6MZAvt69e9P+/fspJiaGhgwZQi4uLjRu3Djrcfz9/WnOnDk2MbRq1YrCw8NttrVr1846/qgq3/OSPv0//vij0mN37NiRRo4cSZcvX7Z+Do0ZJ/0G4pFHHqHQ0NBynyssLCSTyWQzoC8wMJAA0NatW8u8/tdff6VOnTqRk5MTdenShX766acyA438/f1p9OjRFcaTmJhIL7/8MnXr1o1cXFxIp9NRmzZt6NVXX6Xk5GTr6/773/9S69atSa1WU2BgIO3evbvMwBvcNIgwJyeHpk+fTi1atCCVSkVNmzal+++/n3777TcisiSm3r17k5ubG2m1WurUqZN1xHFFSm7ZGzNmDDk7O5PRaKTp06eXO3DuscceI6PRSHl5eZUek6jmkj4RUWRkJN17772k0+nIYDBQSEgIRUZGWp/fs2cP3XvvvWQwGEin01H79u3ppZdeosLCwgrPn5GRQc7OzmVujyOyfDa9evWyGdQpyzJNnTqV3N3dqXXr1tb3vOS5Fi1a0FdffVXh+YhuJKd169aRv78/qdVqGjhwIJ07d67Ma7du3UoA6Ntvv630mKV9/vnndNddd5GzszPpdDrq1KkTTZ8+na5cuWJ9zbZt26h9+/bWgWw///yzTdJfuXIl9ejRw3p7ZFBQkM13JTk52TpSHZXcstevX79yb9m73aRPZKn4PfLII+Tm5kYajYZatWpFzz77rPX7VNWkX9XvZlFRES1cuJDatWtHKpWKPDw8qF+/fjafxblz5ygsLMzmlr3g4GB68cUXra+5k6RPdOvveVWT/vbt26l9+/akUqn4lj0iEkQ1OPqFNUh79uxB//79ceTIEWvfbWPWq1cv9O3bF0uWLLF3KDVizpw5OHDgALZu3Vqt43z77beYM2cOYmJibAaCVseHH36I2bNnIz4+/pYDJpn9ZWZmwtfXF3Pnzq20K43ZD/fpszI++ugjdOvWDd7e3oiLi8OUKVMQEhLS6BN+UlIStm3bhoMHD2LDhg32DqfGvPrqq3jnnXeQnZ19WwPBbpafn481a9bUSMLPysrCpUuXsGjRIkycOJETfj31/fffQ6lUokOHDkhISMDs2bMhhMDw4cPtHRqrACd9VsbFixfx9ttv4/r16/Dy8sKgQYNsbrNrrJo0aQJ3d3csW7YMAQEB9g6nxmg0Grz++uvVPk55dw7cqRdffBFfffUVBg0ahFdffbXGjstqVk5ODt566y1cuHABer0ePXv2xJ9//lknU0izO8PN+4wxxlgjwZPzMMYYY40EJ33GGGOskWgUffpXrlyxdwh3zGQyISkpyd5h1Dgul2PhcjkWLpdjqY1yeXt7l7udr/QZY4yxRoKTPmOMMdZIcNJnjDHGGolG0afPGGOMlSAi5OXlQZblWlvA6HZcv34d+fn5t70fEUGSJGg0miqXg5M+Y4yxRiUvLw8qlarSpZrrklKpvOOZLIuKipCXlwetVlul13PzPmOMsUZFluV6k/CrS6lU2ixvfSuc9BljjDUq9aFJvybdTnkaRlWnjmTlm7H1eAqcFAIqhYCTQir+u/ixdNNjhVTqOQFV8WOF1LD+wzHGGHMMnPRvQ2aBGRtjk1HdxQokgeLKgFRcGbhRUVBJpSoKCgGDLhlUVACVJG7sU+p5J4VU6rmbKiJSORUThQSFaHg1XcYYa6ji4+MRHR2NoUOHVvtYnPRvQzNnJ2wZ0Q5mAgrMMgrNhAIzFf8to1Am221yOa8peSxbHt94jlBollFQfIzsQhmFZhnmjCLkFRQVb7e8Xq5mrUMApSoCUqkKwo3HlbVe3Gi5KL9SUboioyw+RumKipJbOhhjrMri4+OxZcsWTvr2IISAUgBKSQGoav985U3PaJbLVhLKqziUqVTI5VQyrBUU28fphbK14nLzPuYaWJfRSXEaKgVsuj1sKiKSKFsxKa5slFfRUErCtrJyixYQbulgjJWWk5OD559/HlevXoUsy3jppZfQsmVLzJ49G9nZ2TAajViyZAmaNm2KmJgY/N///R+EEOjXrx927dqFnTt34ptvvsEvv/yCnJwcnD9/HuPHj0dBQQE2bdoEJycnrFu3Du7u7rhw4QJee+01JCcnQ6vV4r333kPLli3x8ssvw9nZGYcPH0ZiYiJee+01PPTQQ5g/fz7OnDmDQYMG4R//+Aeee+65Oy4nJ30HpJAEtJKAVmWfcZhmmVBUXPGwtl7I5bRmlGoBKf24wExQqjVIz8qxrXiUqohkFsm2FZNSrShF1W3qAG6qEFTc4nGjonDjcWUtIK3NariQDLWSx8gy5kh27doFLy8vrFu3DgCQkZGBUaNGYc2aNfDw8MB3332HhQsX4r333sPUqVOxaNEiBAUFYf78+TbHOXnyJH755Rfk5+ejb9++mDVrFnbs2IHw8HBs3LgRzz77LKZNm4YFCxYgICAABw8exPTp0/Htt98CsNyzv3XrVpw5cwbPPPMMHnroIcyaNQsrV67E2rVrq11OTvrstikky2BEtRIA7uze0uosMCFTqdaNm1ooqlQRKafb5UaXi+V4WQVma8WmTMWk0krHZUgC8HVxQgt3DVq6qxHgrkELdzXcNPx1Y6y+at++Pd566y3MmzcPYWFhcHV1xcmTJ/HUU08BsNzm5+npifT0dGRlZSEoKAgA8NhjjyEiIsJ6nD59+sBgMMBgMMDZ2RmDBg0CAHTo0AFxcXHIzs7GgQMH8Pzzz1v3KSwstP77gQcegCRJaNu2LRITE2u8nPwrxByOJATUypJKR92TiUpVCG5UKvLNhByhwZG/E3E+NQ+xCTnYcyHDup+7VokAdzVaFlcGWrir0czgxHdzMFYPtGrVCj///DN27tyJRYsWoW/fvmjbti1++OEHm9elp6dXehwnJyfrvyVJglqtBmDpGjabzZBlGS4uLvj111+tr1MqlSgqKiqzP1EN9KXehJM+Y7dJEiXjB8o+ZzKZ0MX9xuOMvCKcT8vHhdR8nEvNw/nUfMRcTbaOi1ArBFoUVwRauKkRYNTA300NDXcPMFanrl27Bjc3NzzxxBNwcXHB2rVrkZKSgujoaAQFBaGwsBDnzp1Du3btYDAYcPDgQfTo0QPffffdbZ3H2dkZfn5++OGHH/Dwww+DiBAbG4t27dpVuI/BYEB2dnZ1iwiAkz5jtcpFo0Q3LyW6eemt2wrNMuLTC6yVgPOpefjjQgZ+LrTMqiUAeLs4WSoBxa0CLY0auGsUPACRsVpy4sQJzJ07F0IIqFQqvP3221AoFHjjjTeQkZEBs9mMcePGoV27dnj33Xcxbdo0CCHQu3dvODs739a5PvjgA8ycORPvv/8+ioqKMHTo0EqTfocOHSBJEsLCwjB8+PBqDeQTVBvtB/XMlStX7B3CHatO33d9xuWyRURIyC60VgIsf+cjIftGX5+rWmGpAJRUBNw18HGpm+4B/rwcC5ercjk5OdDpdHe8f3Z2NvR6S0X+gw8+QEJCAt566607Pl7p5v07UV55vL29yz/XHZ+FMVZjhBBoanBCU4MTQv1uXDVkFZhxsVTXwPnUPPxwMtV6B4OTQqC5q9qmMtDCXQ2d6s4GWDLGbi0iIgIffPABzGYzfHx8sHTpUnuHVGWc9BmrxwxOCnRqqkOnpjdq8UUy4VJ6vk2rwL74TPx69sYAIy+DqkyrgEmn5O4BxmrAo48+ikcffdTeYdwRTvqMORilJNDCXYMW7hrcA1cAlu6B5NwinE8prgikWf7+X3yWdT+Dk2RTCWjproavixoqBVcEGGssOOkz1gAIIWDSqWDSqRDsa7Buzym0dA+UVALOp+bj59NpKCi+fUApAX6ulkpAQHHXQEs3DQxq7h5grCHipM9YA6ZTKdDBU4cOnje6B8wy4UpmgbV74FxqPg5cycLOcze6Bzz1SstthMWtAj1VBqiIuHuAMQfHSZ+xRkYhCfi5quHnqka/Fi7W7am5RdZKwIXiVoH9l7Isq0ruuQydSkILN8vtgyWTDPm5OsFJwXMKMOYoOOkzxgBYZgx01xrQw/tG90BekYyLaflIKlThaHwSzqXm47ezafixyNI9IAnAz6X47gGjGi3cLBUCF55ymLHbFh8fj9GjR2Pnzp21dg7+ZjLGKqRRSmhn0qKvyYS+zSw/FzIRrmUWWlsFzqfm4cj1HOwuNeWwh1ZZfPvgjVYBL2cVJO4eYMyuOOkzxm6LJAS8XZzg7eKEvv43tqfnFdncRnghNR8HryajZH0ijVLA301js/6Av5uaVyRkrJSioiK8+OKLOHr0KNq2bYtly5ZBq9XW2PE56TPGaoSrRonAZkoENrsx5XCBWcbfaQU3biNMycPu8xnYfjoNgKV7wNvZqcycAu5a/mli9iNv+BQUf75Gjyn8WkJ66tlbvu7s2bNYvHgxgoODMXXqVHzxxRcYP358jcXB3yzGWK1xUkho7aFBaw+NdZtMhISsQpvbCE8m5eKPi5nW17hpFGXmFPB25hUJWcPn7e2N4OBgAMDjjz+Ozz77jJO+vVBuDui37wGtAdDpIXR6QKsDdHrrNmi0fFsTY5WQhICXsxO8nJ3Qu/SUw/lmnE/Ls+ki+P5ENoos6xDBSSHg72Y75bC/G085zGpeVa7Ia8vN+aOm8wkn/duRngr67ivrw3JXKhLSjYqATg9o9aUqCIZS23XlbCuuNEjcx8kaH4NagS5N9ejStPSKhIRLGbZTDu/9OxM7ztyYU6CZs8paCQgonlvAQ8tTDjPHdPnyZetyvlu3brVe9dcUTvq3QXj5QPpoM5CbA+RmATnZlj+52aCSf+dkW57LzbmxLeHqjX/n51qPV36lQVgqDcWVhRRXd5iVTratCsWVBXFTxcLS0qDjSgNrMFQKUZzQNUCpKYeTcopKrUaYh3Mpedj7943uAefiFQkD3DWWuQXc1fB1VUPJ3QOsnmvVqhW++OILvPLKK2jbti1Gjx5do8fnpH+bhFIJOLtY/pTeXsX9yWwGcm9UFkoqClTRtsJ8IPHqjefzqlBp0OhKVQYsFQhLBcFgU0EQpSsL2pLntRASN5ey+ksIgSZ6FZroVejle6N7IKfQjAvFSxKfS83DhdR8/HgyFYVyyZTDAv5uTmjhdqNVoKfznS9nylhN8/Pzw549e2r1HJz065hQKACDi+VP6e0VvN540/rRZDYDeTkVVxqs27MsrQu52UByIujShRvPlRyroiC1OpvWBugM5VQQSrosiisLJS0RWr2ljIzVMZ1KgY6eOnS8acrhyxkF1krA+dQ8RF3Owm8lUw5H/A1PvcpaCShZmthTr+LuAdYgcdJ3MEKhAPTOlj+lt1dxf5LNltaCHNuWBSrplsjJuWlbNpCSCMq5YPl3bg5AlupChZUGtbaSCoLlT66nF8hMZbosoNVZWlMYqwEKSaC5mxrN3dRAS8s2IkJKbhEupObjeoECxy6l2E45DEDvJKGlm9q6/kBA8ZTDKp5ymDk4/nVtZISkKL4yN9hur+L+JMuWSkNueZUG23EN1nEMacmgK39bKgw52QDJyKjsJGqN7TgFa/dEycBHXTnbSg2QVKru9O1hjYAQAh46FTx0KphMJiS1tEx8UjLl8LmU4smF0vKw40wa8otXJFQIy4qELWxaBTRw4RUJmQOps6Q/ceJEaDQaSJIEhUKBBQsWICsrC0uWLEFiYiKaNGmCKVOmwGAwgIiwZs0aHDp0CGq1GhMmTEBAQAAAYPfu3di8eTMAyz2MAwYMqKsiMMAySLAkwXqU2l7F/YkIyM+FUaNGyqX4sgMhSwZIlgyEzM0GMtJA1y7dqFTIlnu4KmxpcFLfNMDRAKHVocygx/IGQ2r1ECquNDRGJVMOtzPdmP3MLBOuZhXgfEo+LhTPK3D4Wg52ny815bBOaTPLYEt3DZoaeMphVj/V6ZV+eHg4XFxu9GVv3boVXbp0wWOPPYatW7di69atGDVqFA4dOoRr165h2bJlOH36NFatWoX58+cjKysLGzduxIIFCwAAM2bMQFBQEAwGQ0WnZPWMKB5oqDCZIHDjCun2Kg155Y9puGlcA+UUVyAy0kDXL9/Yx2y+cbzyTuLkdKP1oLiyIG6qLJQ7GFKnBxmN1Xp/WP2ikAR8XdTwdVHj7lLb0/Is3QPnSt1BcOBKdqkph6XiCoDtnAK8IiGzN7s270dFReHNN98EAPTv3x9vvvkmRo0ahejoaPTr1w9CCLRt2xbZ2dlITU1FbGwsunbtak3yXbt2RUxMDO666y47loLVJUulQWv5A9ON7VXcn4iAgoJKbrnMKluZyM4CJV63PJeTDZhvjPi+udKQ5GYEdQmC6B4KtO8KoXKqdplZ/eNWzpTD+UUy/k63nVNg17kM/FSUBsAyuVD3ZnqE+BoQ7GPglQiZXdTp/7p58+YBAAYNGoSwsDCkp6fD3d0dAODm5ob0dMuI2pSUFJhMN37QPTw8kJKSgpSUFHh43GhTNhqNSElJKXOeiIgIREREAAAWLFhgcyxHo1QqHTr+ijhquUoqDXJ2Jig768bfOZmgzEwUnTiCvOg/If+xA0Kjhap7KNS97oY6qA+km+7YcCSO+nndSk2Xy8cL6F3qsUyEK+l5OJ2YjUOX0/HH2WREXroGSQBdvV1wd4AH7m7lAR9XTYXHvBP8eVXu+vXrUNazAcPViUetVlf5famzUs+ZMwdGoxHp6emYO3cuvL29bZ4XQtTYLTJhYWEICwuzPi59y5ujMd10y15D0SDKpTVY/pT6rpkGP4H8q1chTh4BxUQiP2Y/8v+3C1AogLadIbqFQASGQHg0sV/cd6BBfF7lqItyaQB0cQe6uLvi6U4uOJeaj33xmYi8lIXlf5zH8j/Ow99NjRBfA0J8ndHKqK72byF/XpXLz8+Hoh7dWqxUKlFUdOdzRuTn55d5X27OsdZz3fFZbpOxuK/T1dUVwcHBOHPmDFxdXZGamgp3d3ekpqZa+/uNRqNNAZKTk2E0GmE0GhEXF2fdnpKSgo4dO9ZVERirEqFSAZ17QnTuCRoxHrh4BnRoHygmErThE9CGT4DmrSzJv3sI4NOC7wlvJIQQaGXUoJVRg5HdmuBaZgEiL2Vh/6VMbIxNxrfHkmHSKdGruALQuamOZxFsRP7973/jypUryM/Px9ixYzFq1KgaP0edJP28vDwQEbRaLfLy8nDkyBEMGzYMQUFB+P333/HYY4/h999/t84xHBQUhJ9//hl9+/bF6dOnodPp4O7ujsDAQHz99dfIysoCABw+fBgjRoyoiyIwdkeEJAEt20K0bAs8/i/Qtcugw5GWCsAPX4O+/wrw8IToHgoRGAK07siTGzUiXs5OeLSDEY92MCIjrwjRV7KxLz4TEWfT8dOpNOhVEnr6GBDqa0B3bz0vLlRHVkVfx/nUvBo9Zkt3DcYFNa30NYsXL4a7uztyc3MxZMgQDB482HrBXFPqJOmnp6fj3XffBQCYzWbcddddCAwMRKtWrbBkyRLs3LnTesseAHTv3h0HDx7E5MmT4eTkhAkTJgAADAYDnnjiCcycORMAMGzYMB65zxyK8PKB8HocuP9xUEYq6HCUpQKwezso4ntA7wzRNdhSAejUHUJds329rP5y0SgxMMAVAwNckV8kI+ZaNiLjsxB1OQt7LmRAKQl089IhxNcZwb4GGLX1q0+aVd9nn32G7du3AwCuXLmC8+fP13jSF0RU4e3ODcWVK1fsHcId4745x3Kn5aK8XCDuEOhQJOhIlOVOAZUT0DHQ0g3QrReEs2stRFw1/HnZj1kmnEjKRWTxOIBrWYUAgHYmDXr5OiPU1wBfV7XNPo5QrjtRU+XKycmBTqe79QvriFKpxJ49e7Bo0SJ8/fXX0Gq1GDZsGKZOnYo+ffrccv/yymP3Pn3GWMWERgv06APRow+oqAg4E2dpAYiJBB3eDxIS0Ko9RPfigYCe5X+hWcOjkAQ6eerQyVOHZ3p44u/0AkReykRkfBbWxSRiXUwivJ2dEOpnGQfQ1sStQ44oMzMTrq6u0Gq1OHPmDA4ePFgr5+Gkz1g9I5RKyz3+7buCnhwHxJ8vrgDsA/13Dei/awDv5hCBxeMA/FvxcsqNhBAC/m6WiX6GdzYhKacQ+y9lITI+E98dT8HmuBS4aRTo1zoN3UwqdPXS8YRADmLAgAFYt24d+vfvj1atWqFHjx61ch5u3q/nuJnOsdR2uSjpuuXK/9A+4HSsZUpiNw+IwF4QgaFAu861svYAf171X1aBGQeLBwIeupaDnAIzNEqBHt4GhPgaEORtgMHB1wloyM371bllj5v3GWughKkpxL0PA/c+DMrOBB2JtrQC/G8XaPd2y4JDnXsC3UMhOve0rDnAGgWDkwL9WrigXwsXuLgZsTvub0ReykLkpSzs/TsTkgA6e+oQUtwN0ETPa0w0Rpz0GXNQQu8M0fseoPc9oIJ84PgR6+2AiPoDpFAC7bsUdwP0gnDzuPVBWYPgpJTQw9uAHt4GPB9MOJOch8hLWdgXn4lPoxPwaXQCAtzVCPFzRoivAS3cqj8hEHMM3LxfzzWk5sfSuFy1h2QzcO6UZQzAoUggofj/f8u2lrsAuocCzfxu60e+PpSrNjTGcl3OuDEQ8GRSLgiAp15V3AJgQMcmOijq6YRANfV5ZWdnQ6/X3/qFdaS6zfvllaei5n1O+vVcY/xRcmT1rVxEBFy7ZJ0REOdPWZ7w9L4xI2BAOwip8r7e+laumtLYy5WWW4T9ly0zAsZczUGhTHB2khDkY0CInzO6N9NDo6w/AwFr6vPKzc2FSqWqN/PvVyfpFxUVobCwEFqt1mY79+kz1ggJISxX9c38gMH/AKUlg2L2W7oBfvsBtGML4OxqaQEIDAE6dINwUt/6wKxBcNMqcV9rN9zX2g25hTJirmZj36VMRF3Owq7zGXBSCHTz0iPUz4AgHwPcGsjKgBqNBnl5ecjPz68X3RpqtRr5+fm3vR8RQZIkaDRVv02zYXyCjLEqEW4eEAMeBAY8CMrNAR07CMTsAx34C/Tnr4CTGujcw7IwUNcgCAdeGZDdHq1KQu/mzujd3BlFMiEuIce6LkDU5SwIAB2aaK0DAZs5O+6y0UKIMlfG9lSXLU6c9BlrpIRWBxF8FxB8F6ioEDh1zDIjYEwk6OD/QJIEtOkEERgC88AHAYlHezcWSkmgq5ceXb30GNfTE+dT8y3jAC5lYc3BRKw5mIjmrk6WGQH9DGhl1ECqB1fM7Na4T7+ea+x9jo6mIZSLiIpXBowEHY4ELl+0POHb0jojIPwC6kWzaHU1hM+rPLVZrutZBZYJgS5lITYhBzIBHtrilQH9nNHZUweVonb+b/DnVXU8kM9B8X9yx9IQy0UJV6E7fQxZf/0GnDkBkAwYm1hWBuzWy9IaUE8GRN2uhvh5AXVXrsx8M6IvZyHyUiYOXslGvpmgU0no6a1HiK8zevrU7MqA/HlVHQ/kY4zdEeHZDPqOXZDbdxAoMx10JMpyN8CeX0C//QDoDJb+/8BQy8qAmvrTV8pql7NagXsCXHFP8cqAR67lWAcC/nExE0oJ6NJUjxBfA3r5GuCh4y4ie+OkzxirMuHsCtE3DOgbBsrPA+JiLBWAo1GgfbsBpcpyB0D3UIhuwRAu7vYOmdURtVJCsK8Bwb4GmGXCqaTc4hkBM7Ey6jpWRl1HGw8NQoq7AfxcnBpEF5Gj4aTPGLsjQq2xTPfbPRRkNgNnjt9YGOhoNEgIyxwA3UMtdwN4+dg7ZFZHFJJAB08dOnjqMLp7E1zKKEBkfBb2XcrE+sNJWH84Cc2cVQgpXhq4rUlbbycEamg46TPGqk0oFJbFftp1Bg3/N3D5gqUCcCgStPFz0MbPLfMFlCwM1KINrwzYSAgh4Oeqhp+rGsM6eyC5eGXA/ZeysO1kCrYeT4GrWoFgX8uMgN289FDXowmBGhpO+oyxGiWEsIz0920JPPQUKDnRuiYA7dgK2r4JcDUWTwkcArTrCqHivt7GwkOnwoNt3fFgW3fkFFpWBoyMtywKFHE2HWqFQPfigYBBPga4OPjKgPUNJ33GWK0SHk0gBj4EDHwIlJ0FOhoNxESCIn8H7fkZ0GgtKwMGhkB06QmhM9g7ZFZHdCoF7vJ3wV3+Lig0E2ITcrAvPhP7L2VhX3wWJAF09NQhtHggoMlk74gdHyd9xlidEXoDROgAIHQAqLAAOHHUMgYgJhKI/hOkUADtuljWBegWAmHkX/nGQqUQCGymR2AzvWVlwJQ8RMZbugFWHUjAqgMJaG26jqBmGoT4OqOlO68MeCf4Pv16ju9LdSxcrjtDsgycP2UdCIhrly1P+LcuXhgoFPBuXuM/8vx5OYarmZYJgQ5cy8PRqxmQCWiiU6KXn2UgYEdPHZQOPBCQJ+epYZz06x8ul2Op63LR1UuWCsDhSODcSYAIaOJlqQAEhgCtO9xyZcCq4M/LsZhMJpy9dA1Rly0zAsZczUaBmWBwkhDkbUCInwHdmxmgVTnWQECenIcx1qiJZr4QzXyBB58ApaeCDu+3VAJ2/Qj69TvA4GKZByAwBOjQHULNKwM2Fq4aJcJauSGslRvyiiwrA0ZeykTU5WzsvpABlSTQzUuHED9n9PIxwE3Laa40fjcYY/WacHWH6Hc/0O9+UF4OEHvIMiHQwX2gv34DnJyAjj0srQBdgyGceWXAxkKjlBDq54xQP2eYZcLxxFzrwkDRkdfwIYB2Jq11QiAfF8ddGbCmcNJnjDkModEBPftC9OwLKioCTsdaKgCHiycFEhLQpgNEYKilEtDEy94hszqikAQ6N9Whc1Md/t3DExfT8q0zAn4Rk4gvYhLh6+JkrQC08WicKwNyn34915D75rhcjqO+l4uIgL/P3RgIeOmC5Qkff8uMgIEhQPNWZQYC1vdy3Skul63EbMuEQPsuZSL2eg7MBLhrlejlY5kQqKuXDiqF/cYBcJ8+Y4zdBiEE4N8Kwr8V8OgIUOI1y9X/oUjQj/8FbfsGMJosEwIFhgJtOzvsyoDs9jXRqzCknTuGtHNHVr4Z0VcstwL+fiEDv5xJg1YpoYe3ZWGgnj4GGJwa7oRA/L+eMdbgiCZeEGGPAmGPgjIzLAsCHYoE/RUB2vUToNVDdAlCXr9BIP/Wlm4D1igY1AoMaOmKAS1dUWCWcfRajrUb4K+/M6EQQOemOoT4OqOXrwFN9A1rtkhu3q/nuJnOsXC56jfKzweOxxTfDrgfyMoAlEqgfTeI7iEQXXtBuBntHWa1NZTP62a1WS6ZCKeT86wzAl7KKAAAtDJqrDMC+rvVzoRAfJ9+DeOkX/9wuRxLQywXyWa4Jl1F2u87QIf2AYnXLE8EtCueDyDUctugA2qInxdQt+W6lF4yEDALp5JyQQC8DCrLQEBfZ7RvUnMrA3KfPmOM1TIhKeDUMRCSpy9o2DPAlb+LVwbcB9q8FrR5LdDU58aMgC3b8sqAjYivqxq+rmo80ckDqblFiLqchX3xmfjxVBq+O5EKF7UCQT4GhPoaENjMcVYG5KTPGGv0hBCWkf4+/sCQ4aCUpBsTAkV8B/plM+DiVrwyYCjQviuEiu/5bizctUrc19oN97V2Q06hGYeuWlYGjLyUiZ3n0uGkEOjezDIQMNjHABdN/U2t9TcyxhizE2E0QdwzGLhnMCgnC3T0AHB4PyjqD9AfOwC1BuhcPCFQl2AIPa8M2FjoVAr0be6Cvs1dUCRbVgaMjM+0dgVIAujQRIsQX2eE+Brg5Vy/Koec9BljrBJCZ4AI6Q+E9AcVFgInS1YG3A86sBckSZZbAEsmBPJoYu+QWR1RSgLdvPTo5qXHs0GEc6n5lhkB47Pw2cEEfHYwAf5uaus4gFZG+68MWKcD+WRZxowZM2A0GjFjxgysWLECcXFx0Okst8tMnDgRLVq0ABFhzZo1OHToENRqNSZMmICAgAAAwO7du7F582YAwOOPP44BAwbc8rw8kK/+4XI5Fi5XWSTLwMUzljEAMZHA1XjLE80DrBUA+Lawy488f172dz2rwHL1H5+JuMRcyAR46JTWCkDnpjdWBmywA/l++ukn+Pj4IDc317rt6aefRmhoqM3rDh06hGvXrmHZsmU4ffo0Vq1ahfnz5yMrKwsbN27EggULAAAzZsxAUFAQDAZuWmOM1S0hSZbBfS3bAo//C3TtcvF0wJGgH74Gff8V4OF5Y0bA1h0hFA130hdmq6nBCY+0N+KR9kZk5BUh+oplYaCIs+n46VQa9CoJPYtnBBzk7FZncdVZ0k9OTsbBgwfx+OOPY9u2bZW+Njo6Gv369YMQAm3btkV2djZSU1MRGxuLrl27WpN8165dERMTg7vuuqsuisAYYxUSXj4QXo8D9z8OykgFHY6yVAB2bwdFfA94NoP08mxeD6ARctEoMTDAFQMDXJFfJCPmWjb2X7LMCrjnQgaW/u8q5oU1RzuTttZjqbOk//nnn2PUqFE2V/kA8PXXX2Pjxo3o3LkzRo4cCZVKhZSUFJhMJutrPDw8kJKSgpSUFHh4eFi3G41GpKSklDlXREQEIiIiAAALFiywOZajUSqVDh1/RbhcjoXLdZtMJiCgDTB0BOTcHBQc2IuMj98F3pkFt/AlUPq3qvlzlsKfV/3m4wUMCQTMMuHY1QzsvZCGoNY+dXLbX50k/QMHDsDV1RUBAQGIjY21bh8xYgTc3NxQVFSEjz/+GN999x2GDRtW7fOFhYUhLCzM+thR+oDK40h9WLeDy+VYuFzV1D4Q4tX5kJe8geRZL0B6KRwioF2tnY4/L8fhowZe6OuPpKQkZNbgcSvq06+T2QROnjyJ6OhoTJw4EUuXLsWxY8ewbNkyuLu7QwgBlUqFe+65B2fOnAFguYIv/cEmJyfDaDTCaDQiOTnZuj0lJQVGo+NPmckYa/iEd3NI0xYAegPk914HxcXYOyTWCNVJ0h8xYgRWrlyJFStW4OWXX0bnzp0xefJkpKamArAsixkVFQU/Pz8AQFBQEPbs2QMiwqlTp6DT6eDu7o7AwEAcPnwYWVlZyMrKwuHDhxEYGFgXRWCMsWoTTbwsid/UFPLyt0AH/2fvkFgjY9f79JctW4aMjAwAgL+/P5577jkAQPfu3XHw4EFMnjwZTk5OmDBhAgDAYDDgiSeewMyZMwEAw4YN45H7jDGHItyMkF59G/LytyCvXAgxehKkvvfaOyzWSPCCO/VcQ+zDArhcjobLVfMoPw/yh/OBuBiIJ8dCCnu0xo7Nn5djqcv79B1jhQDGGGtghFoD6cXXgR59QN+shvzdV2gE12DMzjjpM8aYnQiVCtJzr0L0DQNt2wDa8Kllpj/GagnPvc8YY3YkFApg9CRAbwDt2ArkZAOjJ0Eo+eeZ1Tz+X8UYY3YmhACGPQPoDKCt60G52ZCen8bL97Iax837jDFWDwghIA0ZDjFiPHB4P+T3Z4PycuwdFmtgOOkzxlg9It0zGGLsVOB0LOTFr4OyMuwdEmtAOOkzxlg9I4UOgDThNeDyRciLZoJSk2+9E2NVwEmfMcbqIdEtGNJLbwKpSZAXTgclOO58I6z+uOOkf+zYMcTFxdVkLIwxxkoR7TpDemUukJ8LeeEM0KXz9g6JObgqJ/3w8HCcOHECALB161a8//77eP/997F58+ZaC44xxho70aKNZb5+SQH5nVmgsyfsHRJzYFVO+vHx8Wjbti0A4LfffkN4eDjmzZuHX3/9tdaCY4wxBohmfpBmLAQMLsUr9B2yd0jMQVU56ZdMD3nt2jUAgK+vL0wmE7Kzs2snMsYYY1bCwxPS9AWApzfkZXNAB/baOyTmgKqc9Nu1a4fPPvsM69atQ3BwMABLBcDZ2bnWgmOMMXaDcHGH9Oo8oEVryB8vgvwnt7Sy21PlpD9x4kTodDr4+/tj+PDhACyr1w0ePLjWgmOMMWZL6AyQprwFdOwG+mI55B1b7R0ScyBVnobX2dkZI0aMsNnWo0ePGg+IMcZY5Swr9P0HtOo90H8/g5ydBfHYSMt0voxVospJv7CwEBs3bsRff/2FzMxMfPHFFzh8+DCuXr2KBx54oDZjZIwxdhOhVAHP/R+wXg/66VsgNwt46jkIiadfYRWr8v+OL774AvHx8Zg8ebK1Nunn54cdO3bUWnCMMcYqJiQFxNMTIe4fCtr1E+izJaCiInuHxeqxKl/p79+/H8uWLYNGo7EmfaPRiJSUlFoLjjHGWOWEEBDDnoGsdwZtXgvKywXNXGjvsFg9VeUrfaVSCVmWbbZlZGTw6H3GGKsHpAeHQYx8ATgShdQ5U0G5vEIfK6vKST80NBQffPABEhISAACpqalYvXo1+vTpU2vBMcYYqzppwIMQY6ei8MQRyIv/A8rkFfqYrSon/REjRsDT0xOvvPIKcnJyMHnyZLi7u+Mf//hHbcbHGGPsNkgh/eE2YwFw5W/Ii2aAUpLsHRKrR6rcp69UKjFmzBiMGTPG2qzPt4cwxlj9ow7qC+nl2ZA/mAN50QxIU96CaOpt77BYPVBp0r9+/XqFz+Xm5lr/3bRp05qLiDHGWLWJtp0gvTIP8tJwS+J/eTaEX0t7h8XsrNKkP3ny5Cod5JtvvqmRYBhjjNUc4d8K0rQFkJe+AfmdWZAmvw7RuqO9w2J2VGnS52TOGGOOTTTzhTRtIeQlb0Be8gakF2ZBdObZVBsrnrqJMcYaOOHRBNK0t4GmPpA/mAuK/tPeITE7qfJAPrPZjF9++QVxcXHIzMy0eW727Nk1HhhjjLGaI1zcIP3fPMjL50L+5F2I3BxId99n77BYHbutaXgjIiLQsWNHnDt3DiEhIUhPT0enTp1qMz7GGGM1ROgMkF6eDXTqDlr7AeRfNts7JFbHqpz0IyMjMWvWLAwePBgKhQKDBw/Gq6++itjY2NqMjzHGWA0SajWkibMggu8Gbfwc8ua1ICJ7h8XqSJWb9wsKCuDh4QEAcHJyQn5+Pnx8fHDhwoXaio0xxlgtEEoVMG4qoNWDtm8EcrKAEeN5hb5GoMpJ38fHB2fPnkXr1q0REBCA//73v9BqtTAajbUZH2OMsVogJAUw6gVArwdt3wTk5gDPvAyhrHJaYA6oyp/umDFjoFAoAACjR4/GqlWrkJeXh+eee67WgmOMMVZ7hBAQj4+GrDWANn8Bys2B9Px0CLXa3qGxWlLltpy8vDzo9XoAgEajgbu7O3x8fNCsWbNaC44xxljtkx58AuLpCcCxA5DfDwflZNs7JFZLqpz0V69eDam4v2ft2rUwm80QQuDjjz+u8slkWca0adOwYMECAEBCQgJmzZqFSZMmYcmSJSgqKgIAFBYWYsmSJZg0aRJmzZplXdkPALZs2YJJkybhpZdeQkxMTJXPzRhjrGJSvwcgnv0/4Nyp4hX60u0dEqsFVU76KSkpMJlMMJvNOHz4MJ5//nk8++yzOHXqVJVP9tNPP8HHx8f6eP369RgyZAiWL18OvV6PnTt3AgB27twJvV6P5cuXY8iQIfjyyy8BAJcuXcLevXvx3nvv4bXXXsPq1ashy3KVz88YY6xiUvDdkF58DbgWX7xCX6K9Q2I1rMpJX6vVIi0tDXFxcfD19YVGowEA69X5rSQnJ+PgwYO49957AQBEhNjYWISGhgIABgwYgKioKABAdHQ0BgwYAAAIDQ3FsWPHQESIiopCnz59oFKp4OnpCS8vL5w5c6bKhWWMMVY50bknpJffAtJTIS+cDrp22d4hsRpU5YF8DzzwAGbOnImioiKMGTMGAHDixAmbK/fKfP755xg1apR1db7MzEzodDrr4ECj0YiUlBQAllaFktsDFQoFdDodMjMzkZKSgjZt2liPWXqf0iIiIhAREQEAWLBgAUwmU1WLWe8olUqHjr8iXC7HwuVyLNUul6kfCpuuQOrsKaB3ZsItfAlUAe1qLsA7xJ9XDZyrqi987LHH0KtXL0iSBC8vLwCWpDt+/Phb7nvgwAG4uroiICCgTibzCQsLQ1hYmPVxUlJSrZ+ztphMJoeOvyJcLsfC5XIsNVIuFw+IV9+GvOR1pPxnIqRJb0C0se8Kffx5VZ23t3e522/rhsybD1LRQW928uRJREdH49ChQygoKEBubi4+//xz5OTkwGw2Q6FQICUlxXrPv9FoRHJyMjw8PGA2m5GTkwNnZ2fr9hKl92GMMVazhJcPpOnFK/QtfQPS+JkQXXraOyxWDXUy/dKIESOwcuVKrFixAi+//DI6d+6MyZMno1OnTti3bx8AYPfu3QgKCgIA9OzZE7t37wYA7Nu3D506dYIQAkFBQdi7dy8KCwuRkJCAq1evonXr1nVRBMYYa5SEsQmkaQsALz/IK+ZCjvrD3iGxarDrnIsjR47Etm3bMGnSJGRlZWHgwIEAgIEDByIrKwuTJk3Ctm3bMHLkSACAn58fevfujalTp2LevHkYO3as9TZCxhhjtUM4u0J6ZS7Qqj3o03ch7/nZ3iGxOySoEay0cOXKFXuHcMe4D8uxcLkcC5fr9lBBPuSVC4Gj0RCPj4b04BM1fo7K8OdVdRV1v/NlMmOMsSoRTmpIE2ZB9OoH2vwF5E1f8Ap9DoZXVmCMMVZlQqkExk4FdHrQz5ssK/SNHG9ZwIfVe5z0GWOM3RYhScCI8YDOAPrpv5YV+v79smXJXlavcdJnjDF224QQEEOfhqwzgDausazQN34Gr9BXz3GfPmOMsTsm3T8U4l8vArGHIC8NB+Vk2TskVglO+owxxqpFuvs+SM+/Cpw/Bfnd10AZafYOiVWAkz5jjLFqEz37QnrxP8D1K5AXzQQl8wp99REnfcYYYzVCdO4BacpbQEaaZYW+q5fsHRK7CSd9xhhjNUa07gDp1flAUSHkRTNAF8/aOyRWCid9xhhjNUr4tYQ0fSGg1kBe/Bro1DF7h8SKcdJnjDFW40RTb8tCPa5GyEvfBB2JsndIDJz0GWOM1RJhNFkSv3dzyB/Ohxz5u71DavQ46TPGGKs1wtmleIW+DqDV70He/ZO9Q2rUOOkzxhirVUKrg/RSONA1GPTlSsg//ZcX6rETTvqMMcZqnXBSW6bpDekP2rIOtOlzTvx2wHPvM8YYqxNCqQT+PcWyQt8vW4CcbGDUC7xCXx3ipM8YY6zOCEkC/vm8ZYW+H7+1JP5xU3mFvjrCSZ8xxlidEkJAPDbKskLffz8D5eVAemEmhFpj79AaPO7TZ4wxZhfSfY9BjJ4ExB2GvOQNXqGvDnDSZ4wxZjfSXYMgPT8NuHgG8juvgTJS7R1Sg8ZJnzHGmF2Jnn0gTXodSLgCeeEMUHKCvUNqsDjpM8YYszvRsTukqXOArAzIC6aDrsbbO6QGiZM+Y4yxekG0am9ZoU82W1bou3Da3iE1OJz0GWOM1RvCtyWk6QsAtRby4v+ATh61d0gNCid9xhhj9Yrw9LYszetusqzQd3i/vUNqMDjpM8YYq3eEuwekaW8Dvi0sK/Tt223vkBoETvqMMcbqJWFwgfTKHKBNJ9Dq95Dz0yZ7h+TwOOkzxhirt4SmeIW+wBBkfroY8rZveKGeauCkzxhjrF4TKidI42dAM+AB0HdfWqbu5cR/R3jufcYYY/WeUCjgMuk/yJeUoF+/syzU86+JvELfbeKkzxhjzCEISYJ46llAbwD9sAGUmwNp3CsQKl6hr6q4eZ8xxpjDEEJAemQExJPjgIN7IX8wB5SfZ++wHAYnfcYYYw5HCnsEYsxLwPEjlhX6snmFvqqok+b9goIChIeHo6ioCGazGaGhoRg+fDhWrFiBuLg46HQ6AMDEiRPRokULEBHWrFmDQ4cOQa1WY8KECQgICAAA7N69G5s3bwYAPP744xgwYEBdFIExxlg9I/W9F6TVQf70HcjvzIQ05S0IV3d7h1Wv1UnSV6lUCA8Ph0ajQVFREd544w0EBgYCAJ5++mmEhobavP7QoUO4du0ali1bhtOnT2PVqlWYP38+srKysHHjRixYsAAAMGPGDAQFBcFgMNRFMRhjjNUzokdvSJPDIa+YB3nhdEvib+Jl77DqrTpp3hdCQKPRAADMZjPMZjOEEBW+Pjo6Gv369YMQAm3btkV2djZSU1MRExODrl27wmAwwGAwoGvXroiJiamLIjDGGKunRIdulhX6srMsC/Vc+dveIdVbdTZ6X5ZlTJ8+HdeuXcP999+PNm3aYMeOHfj666+xceNGdO7cGSNHjoRKpUJKSgpMJpN1Xw8PD6SkpCAlJQUeHh7W7UajESkpKWXOFRERgYiICADAggULbI7laJRKpUPHXxEul2PhcjmWRlkukwlF8z9C6uwpoHdmwe2N96Bq07FuA7xDdfl51VnSlyQJ77zzDrKzs/Huu+/i77//xogRI+Dm5oaioiJ8/PHH+O677zBs2LBqnyssLAxhYWHWx0lJSdU+pr2YTCaHjr8iXC7HwuVyLI22XHpX4NX5oPdeR8rrkyC9+BpE+651F+Adqo3Py9vbu9ztdT56X6/Xo1OnToiJiYG7uzuEEFCpVLjnnntw5swZAJYr+NJvQHJyMoxGI4xGI5KTk63bU1JSYDQa67oIjDHG6inRxMuyNK9HE8jvzwbF7LN3SPVKnST9jIwMZGdnA7CM5D9y5Ah8fHyQmpoKACAiREVFwc/PDwAQFBSEPXv2gIhw6tQp6HQ6uLu7IzAwEIcPH0ZWVhaysrJw+PBh64BAxhhjDACEmwekV+cDfi0hf7QA8v922TukeqNOmvdTU1OxYsUKyLIMIkLv3r3Rs2dPzJ49GxkZGQAAf39/PPfccwCA7t274+DBg5g8eTKcnJwwYcIEAIDBYMATTzyBmTNnAgCGDRvGI/cZY4yVIQwukKbOgfzhfNBnSyDnZEO69yF7h2V3ghrBqgVXrlyxdwh3rNH2zTkoLpdj4XI5ljspFxUWQP7kXSBmH8QjIyAeerLSu8fsoUH36TPGGGN1xbJC33SI3gNB338F+nY1SJbtHZbd8II7jDHGGjShUABjJgM6PSji++IV+l60bG9kOOkzxhhr8IQkAU+OA/TOliv+3GxIz77a6Fbo4+Z9xhhjjYIQAtLDT1mW5z20D/Lyt0B5ufYOq05x0meMMdaoSPc+DPHMy8DJo5Dfex2UnWnvkOoMJ33GGGONjtRnIKQXZgDx5yG/MwuUVnZK94aIkz5jjLFGSQSGQnopHEhKsCzUk3jN3iHVOk76jDHGGi3RviukV+YAOdmQF84AXb5o75BqFSd9xhhjjZpo2RbSq28DApAXzQSdO2nvkGoNJ33GGGONnvBpDmnaAkBvsAzuO37Y3iHVCk76jDHGGIpX6Ju2ADA1hbxsNujg/+wdUo3jpM8YY4wVE25Gywp9zVtBXrkQ8t7f7B1SjeKkzxhjjJUi9M6QprwFdOgKWvM+5Ijv7R1SjeGkzxhjjN1EaLSQXnwd6NEb9M0qyN9/hYawKC0nfcYYY6wcQqWC9Nw0iL73gn7YANrwqcOv0McL7jDGGGMVEAoFMHoyoDOAfv0OyM0GRk922BX6OOkzxhhjlRBCAP/4t2WFvq3rQbk5kJ57FULlZO/Qbhs37zPGGGO3IISANGQ4xIjngZhIyMveAuXl2Dus28ZJnzHGGKsi6Z4hEGOnAqeOQV78Oigrw94h3RZO+owxxthtkEIHQJowC7h0wTJtb2qyvUOqMk76jDHG2G0S3XpBevlNIDUJ8sLpoISr9g6pSjjpM8YYY3dAtOsC6ZW5QH6uZWneSxfsHdItcdJnjDHG7pBo0aZ4hT4J8juzQGdP2DukSnHSZ4wxxqpBeDeHNH0BYHC2rNAXd8jeIVWIkz5jjDFWTcLU1LJCn2czyMvngA7utXdI5eKkzxhjjNUA4eoO6f/mA/6tIa9cBPmvCHuHVAYnfcYYY6yGCL2heIW+bqDPl0H+9Tt7h2SDkz5jjDFWg4RaA+nF/0D07Av6djXkrevrzQp9PPc+Y4wxVsOESgU893/AOh3ox2+BnGzgqWchJPtea3PSZ4wxxmqBkBTAv160rNC3Y8uNFfqU9ku9nPQZY4yxWiKEAIaNAfQG0JZ1lhX6np9mtxX6uE+fMcYYq0VCCEiD/wExcjxwJAry+7NBufZZoY+TPmOMMVYHpAGDLSv0nYmDvPg/oMy6X6GvTpr3CwoKEB4ejqKiIpjNZoSGhmL48OFISEjA0qVLkZmZiYCAAEyaNAlKpRKFhYX44IMPcO7cOTg7O+Pll1+Gp6cnAGDLli3YuXMnJEnCM888g8DAwLooAmOMMVZtUkh/kFYHeeVCyO/MhPTybMBkqrvz18VJVCoVwsPD8c4772DRokWIiYnBqVOnsH79egwZMgTLly+HXq/Hzp07AQA7d+6EXq/H8uXLMWTIEHz55ZcAgEuXLmHv3r1477338Nprr2H16tWQZbkuisAYY4zVCNE1+MYKfYtmoOjqpTo7d50kfSEENBoNAMBsNsNsNkMIgdjYWISGhgIABgwYgKioKABAdHQ0BgwYAAAIDQ3FsWPHQESIiopCnz59oFKp4OnpCS8vL5w5c6YuisAYY4zVGNG2M6T/mwfk5yF11njQ5b/r5Lx1NnpflmVMnz4d165dw/3334+mTZtCp9NBoVAAAIxGI1JSUgAAKSkp8PDwAAAoFArodDpkZmYiJSUFbdq0sR6z9D6lRUREICLCMv3hggULYKrDppOaplQqHTr+inC5HAuXy7FwuRyEyYSit1ci67P34dIyAJKLW62fss6SviRJeOedd5CdnY13330XV65cqbVzhYWFISwszPo4KSmp1s5V20wmk0PHXxEul2PhcjkWLpcD0RhgemOJpVw1WDZvb+9yt9f56H29Xo9OnTrh1KlTyMnJgdlsBmC5ujcajQAsV/DJyckALN0BOTk5cHZ2ttl+8z6MMcYYq1ydJP2MjAxkZ2cDsIzkP3LkCHx8fNCpUyfs27cPALB7924EBQUBAHr27Indu3cDAPbt24dOnTpBCIGgoCDs3bsXhYWFSEhIwNWrV9G6deu6KAJjjDHm8OqkeT81NRUrVqyALMsgIvTu3Rs9e/aEr68vli5dig0bNqBly5YYOHAgAGDgwIH44IMPMGnSJBgMBrz88ssAAD8/P/Tu3RtTp06FJEkYO3YsJDvPY8wYY4w5CkH1ZemfWlSb4wdqW4PswwKXy9FwuRwLl8ux1Ea56k2fPmOMMcbsg5M+Y4wx1khw0meMMcYaCU76jDHGWCPRKAbyMcYYY4yv9Ou9GTNm2DuEWsHlcixcLsfC5XIsdVkuTvqMMcZYI8FJnzHGGGskOOnXc6UXDmpIuFyOhcvlWLhcjqUuy8UD+RhjjLFGgq/0GWOMsUaCkz5jjDHWSNTJKnvs9mVnZ2PlypWIj4+HEAIvvPAC2rZta++wqm3btm3YuXMnhBDw8/PDhAkT4OTkZO+w7siHH36IgwcPwtXVFYsXLwYAZGVlYcmSJUhMTESTJk0wZcoUGAwGO0d6e8or17p163DgwAEolUo0bdoUEyZMgF6vt3Okt6e8cpX44YcfsG7dOqxatQouLi52ivDOVFSu7du345dffoEkSejRowdGjRplxyhvX3nlunDhAj799FMUFBRAoVBg3LhxDre8elJSElasWIG0tDQIIRAWFobBgwfX3W8HsXpp+fLlFBERQUREhYWFlJWVZeeIqi85OZkmTJhA+fn5RES0ePFi2rVrl32DqobY2Fg6e/YsTZ061bpt3bp1tGXLFiIi2rJlC61bt85O0d258soVExNDRUVFRGQpY0MpFxFRYmIizZ07l1544QVKT0+3U3R3rrxyHT16lN566y0qKCggIqK0tDR7hXfHyivXnDlz6ODBg0REdODAAQoPD7dTdHcuJSWFzp49S0REOTk5NHnyZIqPj6+z3w5u3q+HcnJycPz4cQwcOBAAoFQqHe6qqiKyLKOgoABmsxkFBQVwd3e3d0h3rGPHjmVq4lFRUejfvz8AoH///oiKirJHaNVSXrm6desGhUIBAGjbti1SUlLsEVq1lFcuAPjiiy8wcuRICCHsEFX1lVeuHTt24NFHH4VKpQIAuLq62iO0aimvXEII5ObmArD8Tjri74e7uzsCAgIAAFqtFj4+PkhJSamz3w5u3q+HEhIS4OLigg8//BAXL15EQEAAxowZA41GY+/QqsVoNOLhhx/GCy+8ACcnJ3Tr1g3dunWzd1g1Kj093fpD5ObmhvT0dDtHVPN27tyJPn362DuMGhEVFQWj0YgWLVrYO5QadfXqVZw4cQIbNmyASqXC008/7XDN4OUZPXo05s2bh3Xr1kGWZcydO9feIVVLQkICzp8/j9atW9fZbwdf6ddDZrMZ58+fx3333YdFixZBrVZj69at9g6r2rKyshAVFYUVK1bg448/Rl5eHvbs2WPvsGqNEMJhrx4rsnnzZigUCtx99932DqXa8vPzsWXLFjz55JP2DqXGybKMrKwszJs3D08//TSWLFkCagB3Z+/YsQOjR4/GRx99hNGjR2PlypX2DumO5eXlYfHixRgzZgx0Op3Nc7X528FJvx7y8PCAh4cH2rRpAwAIDQ3F+fPn7RxV9R09ehSenp5wcXGBUqlESEgITp06Ze+wapSrqytSU1MBAKmpqQ43KKwyu3fvxoEDBzB58uQGUZm5fv06EhIS8Oqrr2LixIlITk7G9OnTkZaWZu/Qqs1oNKJXr14QQqB169aQJAmZmZn2Dqvafv/9d4SEhAAAevfujTNnztg5ojtTVFSExYsX4+6777aWp65+Ozjp10Nubm7w8PDAlStXAFiSpa+vr52jqj6TyYTTp08jPz8fRISjR4/Cx8fH3mHVqKCgIPz+++8ALD9QwcHBdo6oZsTExOC7777D9OnToVar7R1OjWjevDlWrVqFFStWYMWKFfDw8MDChQvh5uZm79CqLTg4GLGxsQCAK1euoKioCM7OznaOqvqMRiPi4uIAAMeOHYOXl5edI7p9RISVK1fCx8cHDz30kHV7Xf128Ix89dSFCxewcuVKFBUVwdPTExMmTHC4W7/K8+2332Lv3r1QKBRo0aIFxo8fbx1s5GiWLl2KuLg4ZGZmwtXVFcOHD0dwcDCWLFmCpKQkh71lr7xybdmyBUVFRdaytGnTBs8995ydI7095ZWrZLAsAEycOBFvv/22w7XOlFeufv36WccEKZVKPP300+jcubO9Q70t5ZXL29sba9asgSzLUKlUGDdunHVQnKM4ceIE3njjDTRv3tzaYvbPf/4Tbdq0qZPfDk76jDHGWCPBzfuMMcZYI8FJnzHGGGskOOkzxhhjjQQnfcYYY6yR4KTPGGOMNRKc9BljNer48eN46aWX7B0GY6wcfMseY4wx1kjwlT5jrMaYzWZ7h8AYqwSvsscYu6WJEyciLCwMe/bsQVpaGoKDgzFu3DicPn0ay5cvxwMPPIAff/wRXbt2xcCBA7F8+XLrYihJSUn4/PPPcfz4cRAR+vbti7FjxwKwrNj3ww8/IC0tDa1bt8Zzzz2HJk2a2LOojDVonPQZY1Xy559/4rXXXoNGo8HChQuxefNmdOnSBWlpacjKysKHH34IIsLp06et+8iyjIULF6JTp05YsWIFJEnCuXPnAFiWtd2yZQumT5+OZs2aYevWrXj//fcdfrlUxuozbt5njFXJ/fffD5PJBIPBgKFDh+Kvv/4CYFkGdPjw4VCpVHBycrLZ58yZM0hJScHTTz8NjUYDJycntG/fHgDw66+/YujQofD19YVCocDQoUNx4cIFJCYm1nnZGGss+EqfMVYlJpPJ+u8mTZogJSUFAODi4lIm2ZcoWTxEoVCUeS4xMRFr1qzB2rVrrduICCkpKdzEz1gt4aTPGKuSpKQkm38bjUYAsK4UVh6TyYSkpCSYzeYyid9kMuHxxx/H3XffXTsBM8bK4OZ9xliV/PLLL0hOTkZWVhY2b96M3r1733Kf1q1bw93dHV9++SXy8vJQUFCAEydOAAAGDRqErVu3Ij4+HgCQk5OD//3vf7VaBsYaO77SZ4xVyV133YW5c+ciNTUVQUFBeOKJJ3DmzJlK95EkCdOnT8dnn32GCRMmQAiBvn37on379ujVqxfy8vKwdOlSJCUlQafToUuXLlWqTDDG7gxPzsMYu6WJEyfi+eefR9euXe0dCmOsGrh5nzHGGGskOOkzxhhjjQQ37zPGGGONBF/pM8YYY40EJ33GGGOskeCkzxhjjDUSnPQZY4yxRoKTPmOMMdZI/D/o99Km1VE8LgAAAABJRU5ErkJggg==\n",
      "text/plain": [
       "<Figure size 576x288 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "data = pd.DataFrame(dict(\n",
    "    segment= [\"b\", \"b\", \"b\", \"b\",  \"a\", \"a\", \"a\", \"a\",],\n",
    "    price=[5, 10, 15, 20, ] * 2,\n",
    "    sales=[5100, 5000, 4500, 3000,  5350, 5300, 5000, 4500]\n",
    "))\n",
    "\n",
    "plt.figure(figsize=(8,4))\n",
    "sns.lineplot(data=data, x=\"price\", y=\"sales\", hue=\"segment\")\n",
    "plt.title(\"Avg. Sales by Price (%) by Customer Segment\");"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "With this data, the company wishes to answer the following question: who is more sensitive to discounts? In other words, how can we **rank customers by their sensitivity to price (price elasticity of sales)**? By looking at the curve, we get a feeling that segment `A` is overall less sensitive to discount, even though it generates more revenues. However, we can also see that there is some curvature there. In fact, if we take this curvature into account, the ranking of the treatment effect is no longer just between `A` and `B` customers. The treatment effect will also depend on where they are in the treatment curve. For example, the treatment effect of going from 15 BRL to 10 BRL on customers of segment `A` is higher than the treatment effect of going from 5BRL to 10BRL on customers of segment `B`:\n",
    " \n",
    "$$\n",
    "E[Y(10) - Y(5) | Seg=B] < E[Y(15) - Y(10) | Seg=A]\n",
    "$$\n",
    " \n",
    "If we where to order the resulting treatment effects for this experiment, it would look something like this:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 36,
   "metadata": {
    "tags": [
     "hide-input"
    ]
   },
   "outputs": [
    {
     "data": {
      "image/png": "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dt58803mzp0LQPv27dE0jfnz55OcnMzy5ct57LHHSh3nmWee4f3332f37t0kJyfz5ptvYjKZymzhqaypU6fy008/8eijj7J//34+/fRT5s+fD7in5etC7+eMGTPYu3cv48aNY9OmTSQnJ7taOQ4ePFjr8TUmkvRFmVq3bs2WLVvo378/d911F+3atePqq6+moKCAn3/+mauuuuqCx3jzzTeJiYnh2muvZfDgwURERJx3u+CRRx7hueee47XXXqNnz55ceumlLFiwoNYGsJk7dy7XXXcdY8eOpV+/fmRkZDBhwoRSzbTn0jSN5cuX06lTJ6655hr69u3L0aNH+fbbb6v8vPQNN9zAX/7yF6655hqaNGnCvHnzKr1vdd6r66+/nubNm5f6eeihh6oUu6ZpfPrpp4wcOZL777/f9X58/vnnritZX19fvv/+e7p168ZNN91E586dmTRpEnl5eYCz78fTTz/NnDlzaN68Oddff32556qp9/xiNG/enB9//BF/f3+GDx9O165dmTlzJkqpCvf7z3/+w/3338+TTz5Jly5duOKKK3jnnXeIiooCoEePHixatIhXX32VLl268Oyzz7Jw4cJSxwgICOC5555jwIABdO/enWXLlvHJJ5+Uup1WVX369OH999/n/fffp3v37jz99NOuESAr+tuvKRd6Pzt37sz69eux2+1ceeWVdOnShTvuuIO8vDyCgoJqPb7GRFMX+isWooEbOnQowcHBfPLJJ54ORQi3effdd7n11ltJS0uTxNqISEc+0ajs3LmTrVu3MmDAAAoLC1myZAlr1qypsNlWiIbg2Wef5fLLLyckJISEhASmTZvGX/7yF0n4jYwkfdGoaJrGyy+/zJQpUzAMg06dOrFs2bJK3a4Qoj7bsWMH8+fPJz09nZYtWzJu3Dhmz57t6bCEm0nzvnC7C/3J1dVH6oQQor6TK33hNoZhkJ+ff8GkrpTCarXKZB1CCFHDJOkLtzid8H18fCqV9PPy8iTxCyFEDWsUzftHjhzxdAgXLSwsjJMnT3o6jGozm82EhoZWehCZ4uJi0tLSanWK3trQUD6vc0m56hcpV/1SG+U6PbT0ueQySriFrutVumqv6vZCCCEuTL5Vhcf8/e9/Jzw8vNxhVaVDnxBC1CxJ+sJjJkyYwFdffeXpMIQQotGQjnzCYwYNGsShQ4c8HYYQopFR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\n",
      "text/plain": [
       "<Figure size 576x288 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.figure(figsize=(8,4))\n",
    "sns.lineplot(data=data, x=\"price\", y=\"sales\", hue=\"segment\")\n",
    "\n",
    "plt.annotate(\"1\", (8, 5350), bbox=dict(boxstyle=\"round\", fc=\"1\"))\n",
    "plt.annotate(\"2\", (8, 5000), bbox=dict(boxstyle=\"round\", fc=\"1\"))\n",
    "plt.annotate(\"3\", (13, 5100), bbox=dict(boxstyle=\"round\", fc=\"1\"))\n",
    "plt.annotate(\"4\", (13, 4700), bbox=dict(boxstyle=\"round\", fc=\"1\"))\n",
    "plt.annotate(\"4\", (17, 4800), bbox=dict(boxstyle=\"round\", fc=\"1\"))\n",
    "plt.annotate(\"5\", (17, 3900), bbox=dict(boxstyle=\"round\", fc=\"1\"))\n",
    "\n",
    "plt.title(\"Ordering of the Effect of Increasing Price\");"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Just like in the case where the outcome was binary, in this example, **the treatment effect is correlated with the outcome**. The higher the sales (lower the price), the lower the absolute treatment effect; the lower the sales (higher the price) the lower the absolute treatment effect. But in this case, the situation is even more complicated because the **effect is not only correlated with the outcome, but with the treatment level**. This makes answering counterfactual questions trickier. For example, pretend for a moment that your experimental data actually looks like the following plot, where you test higher prices for the segment `A` (rich population) but only lower prices for the `A` population. This is very common, as firms often want to experiment around the treatment they think is more reasonable."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 45,
   "metadata": {
    "tags": [
     "hide-input"
    ]
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 576x288 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "data = pd.DataFrame(dict(\n",
    "    segment= [\"b\", \"b\", \"b\", \"b\",  \"a\", \"a\", \"a\", \"a\",],\n",
    "    price=[5, 10, 15, 20, ] * 2,\n",
    "    sales=[5100, 5000, 4500, 3000,  5350, 5300, 5000, 4500]\n",
    "))\n",
    "\n",
    "plt.figure(figsize=(8,4))\n",
    "sns.lineplot(data=data.loc[lambda d: (d[\"segment\"] == \"a\") | (d[\"price\"] < 12) ], x=\"price\", y=\"sales\", hue=\"segment\")\n",
    "plt.title(\"Avg. Sales by Price (%) by Customer Segment\");"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Now, if you naively aggregate the results of the treatment effect, it will look like segment `A` is much more elastic (has higher absolute treatment effect) to price increase than segment `B`. But that is only because, for segment `B`, you've explored the low treatment effect region.\n",
    " \n",
    "So what can you do when treatment effects change depending on where you are in terms of both treatment and outcome? To be honest, this is still an active area of research. In practical terms, the best thing you can do is to be **very careful** when trying to answer which type of customer is more sensitive to the treatment. Make sure that the compared customer types all had the same treatment distribution. And, if not, be very skeptical of extrapolating the treatment effect. For instance, in the example above, even though customer `B` looks less sensitive to price increase, you don't know if that will still be the case if you assign higher prices beyond 10BRL to this segment.\n",
    " \n",
    "Another thing you can try to do is to linearize the response curve. The idea here is to get rid of the curvature by transforming the treatment or the outcome (or both) so that the relationship between them looks like a line. Since a line has constant derivative, this would get rid of the problem of the treatment effect changing depending on where you are in the curve. As an example, if we take our price variable and transform it by making it negative, exponentiating it by 4 and reversing the sign, we get a somewhat linear(ish) relationship. In this transformed data, the statement that `A` is less sensitive to price increases then `B` makes much more sense, since it now does not depend on where we are at the curve."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 109,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAf0AAAEaCAYAAAAbjY6yAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjQuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/MnkTPAAAACXBIWXMAAAsTAAALEwEAmpwYAABWoElEQVR4nO3dd3hUVfrA8e+ZkkkvkwqhE2roBAhFaiiiVFF3ARdcbAvKWnaluD9xrVhBBBeVIiKKinSkxVBERGlBCYI0FWkhmUAaqXN+fwwMCSAESDIp7+d5eCQzd+59z1zJe++557xHaa01QgghhKjwDK4OQAghhBClQ5K+EEIIUUlI0hdCCCEqCUn6QgghRCUhSV8IIYSoJCTpCyGEEJWEJH0hKhilFB9//HGJHqNWrVq8+OKLJXqMy/Xv35833nijxPY/cuRIYmJiSmz/X331FW5uboSGhnLgwIGb3s/DDz/MU089VYyRicpEkr6o9I4fP47FYqFq1ark5eW5LI7ffvuNESNGUL16dSwWC2FhYcTExLB+/XqXxVRWfP311/zwww88+uijJXaMt99+my+++KJE9r1hwwbuuusunnrqKdq2bUtMTAy//vrrNT/z4YcfopS64kLk2WefZebMmRw5cqREYhUVmyR9UenNnj2bO++8E39/f1asWOGSGHJzc4mJieHYsWN88skn/PLLLyxfvpxevXqRnJzskpjKkrfeeou//e1vuLu7F/u+c3NzAfDz8yMgIKDY9//9998zYMAAXn75ZV555RWWLFlCt27d6NGjBydOnLjqZ/bt28fEiRPp3LnzFe+Fh4fTo0cP3n333WKPVVQCWohKLD8/X9eoUUMvX75cT548Wffp08f53vvvv699fX31+fPnC31m8uTJunr16jo/P19rrXVsbKxu0qSJtlgsumnTpnrjxo0a0PPnzy9yHLt379aA/umnn6653YIFC3Tbtm21r6+vDgwM1H379tUHDhwotM3lx05LS9Njx47VVatW1R4eHrpFixb6yy+/LPSZl156SdeuXVu7ubnpoKAg3atXL52ZmfmncdSsWVNPnDhRjxo1Svv4+OjAwEA9YcIE53cyadIkXb9+/Ss+d//99+vu3btf9/soKCkpSRsMBv3tt99ed9sRI0boHj166LfeesvZ3iFDhujk5OQrtpk2bZquWbOmVkrpzMxM5+sFLVy4ULdq1UpbLBZttVp1nz59tM1mc74/bdo03aBBA22xWHRERIR+8cUXdW5urvP9+Ph4HRwcrOfNm1dov3a7XT/xxBO6cePG+syZM4Xey8jI0JGRkfrTTz+9akxaaz1nzhwdFhZ23e9DiMtJ0heV2sqVK3VoaKjOzc3Vx48f12azWR89elRrrfXZs2e1u7u7XrhwYaHPNG7cWE+YMEFrrfUff/yhPTw89KhRo3RCQoKOjY3VLVu2vOGkf/z4cW0wGPSkSZN0dnb2n243Z84cvXz5cn3o0CG9a9cu3a9fPx0REVHoMwWPbbfbddeuXXWXLl30N998ow8fPqzfe+89bTabdWxsrNZa6y+//FL7+Pjo5cuX699++03v3r1bT5ky5bpJ38fHR//f//2f3r9/v/7oo4+0p6ennjp1qtZa62PHjmmj0ag3btzo/Exqaqr28vK64vu8nqVLl2qj0XjFxdfVjBgxQvv4+Oh+/frpH3/8UW/YsEFHRETogQMHXrHNwIEDdXx8vP7xxx91Xl7eFQl2zpw52mQy6eeff14nJCToPXv26KlTpzqT9KRJk3SNGjX04sWL9ZEjR/SqVat09erV9X/+858bat/lRo4cqf/+9787Y71a0k9ISNCA3rdv3y0dS1Q+kvRFpda/f3/95JNPOn/u3bu3fuaZZ5w/33vvvbpv377On7dv364BvX//fq211hMnTtQ1a9bUeXl5zm1Wr159w0lfa63/97//aS8vL+3u7q47dOign376af3DDz9c8zPJycka0Fu2bHG+VvDYGzZs0BaLRZ89e7bQ5+6//349YMAArbXWb731lq5Xr57Oyckpcqw1a9bUnTp1KvTahAkTdLVq1Zw/9+vXTw8bNsz588yZM3VQUNA1L2quZsqUKTokJKRI244YMUJ7eXkVau/atWs1oA8ePOjcxs/PT6elpV3x2YIJtnr16nrMmDFXPU5GRob28PDQq1evLvT6vHnztJ+fX5FivZp58+bphg0b6vT09KvGdNG5c+c0oFeuXHnTxxKVkzzTF5XW8ePHWbVqFSNHjnS+NmLECObMmeMc0DdixAjWrVtHYmIiAB999BFt27alQYMGgOPZa5s2bTAajc59tG/f/qbieeSRRzh16hRffvklPXv2ZNOmTbRr145XX33VuU18fDyDBg2idu3a+Pj4UKNGDcAxCPBqtm/fTk5ODuHh4Xh7ezv/fPzxxxw8eBCAe+65h9zcXGrWrMnIkSOZP38+aWlp14338nZ27NiRP/74g9TUVMAxyvzLL78kJSUFgA8++IARI0bg5uZ21f198803hWJ8+eWXATh//vwVz/IXLFhQaNsFCxY432vcuDF+fn6F4gLHubqoUaNGeHt7/2nbEhMTOXbsGL169brq+wkJCZw/f5677rqrUBwPP/ww586d48yZM3+67z9z4MABnnjiCRYuXIiXl9c1t734fZw/f/6GjyMqN5OrAxDCVWbPnk1+fj4tW7Ys9Hp+fj4rVqxg0KBB9OrVi6CgID755BPGjBnDwoULee655wptr5Qqtpi8vb3p27cvffv25bnnnuOBBx7g2Wef5YknniAvL49evXrRqVMn5s6dS2hoKACRkZHk5ORcdX92ux0/Pz+2b99+xXsXk294eDj79+9nw4YNxMXF8cILLzBu3Di+//57qlevftNtuf322wkJCWH+/Pl07tyZnTt3FkrOl4uKiiI+Pt75s9VqBSA4OBibzVZo2/79+9OuXTvnzxe/i6K6XlK9HrvdDsAXX3xB/fr1r3j/Yuw34rvvvsNms9G6desrjmMymdi0aZPzAubi9xEcHHzDxxGVmyR9USnZ7XZmz57NxIkT+etf/1rovZdffpn333+fQYMGYTQaGTZsGPPnz6dOnTqcO3eOv/zlL85tGzduzCeffEJ+fr7zbn/btm3FFmejRo3Iycnh3Llz/P7775w5c4aXXnqJRo0aAbB161b0NVbHjoqK4uzZs2RlZdGkSZM/3c5isdCnTx/69OnDCy+8QGhoKEuXLuWxxx77089c3s6tW7cSHh6Or68vAAaDgQcffJAPPviAAwcO0LlzZ2cPydV4eHgQERFxxeutWrUiPT2d33//3dmz4ePjg4+Pz1X38/PPP5OamuqMY+vWrYDjXBVVSEgI1apVY926dfTv3/+K9yMjI3F3d+fIkSP07du3yPu9loEDBxIVFVXotf/85z+cPn2aDz74gDp16jhf/+mnnzAajVdcsApxXa5+viCEK6xcuVIrpfRvv/12xXtr167VBoPBOaBvz549GtAtWrTQgwcPLrTtxYF8Dz74oN63b5+Oi4vTrVu31oD++OOPndt1795djx8//k/j2bVrl77zzjv1Z599pn/66Sd9+PBhvXDhQh0SEqI7duyo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\n",
      "text/plain": [
       "<Figure size 576x288 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "\n",
    "plt.figure(figsize=(8,4))\n",
    "sns.lineplot(data=data.assign(price = lambda d: -1*(-d[\"price\"]**4)),\n",
    "             x=\"price\", y=\"sales\", hue=\"segment\")\n",
    "plt.title(\"Avg. Sales by -(-price^4)\");"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "However, this approach has many drawbacks. First, it is not always possible to linearize a curve. In our example you can clearly see that this linearization is not perfect. But more importantly, sometimes it makes no business sense to discard the curvature. In our pricing example, it may very well be that we are fine in treating customer `A` at price 15 as more sensitive than customer `B` at price 5. This would lead us to a sound decision of decreasing price for customer `A` from 15 to 10, but not doing anything to the price of customer `B`."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Key Concepts\n",
    " \n",
    "I realize I may have raised more questions than provide answers. Alas, sometimes the best we can do about a problem is to be very aware of it. In this chapter, I hope I've managed to open your eyes to the complications that arise when the outcome we care about is non-linear. \n",
    " \n",
    "This is a common and more studied problem with binary outcomes. In this case, the treatment effect tends to be higher the closer we are to an average outcome of 0.5. Since the outcome is bounded at 0 and 1, effects tend to be very small if we are too close to 0 or 1. \n",
    " \n",
    "Things get more complicated with non-linearities arising in continuous outcome situations. Here, the best you can do is think very carefully about the problem. Try to answer if you care more about treatment effect regardless of treatment baseline or if the baseline is important. That alone will be a valuable guiding principle. \n",
    " \n",
    "## Reference\n",
    " \n",
    "Most of the things written here are from my own experience with this problem. However, I did find one academic articles that touch on this subject: *Causal Classification: Treatment Effect Estimation vs. Outcome Prediction*, by Fernández-Loría and Provost talk about the case where treatment effect is correlated with the outcome variable. \n",
    " \n",
    "## Contribute\n",
    " \n",
    "Causal Inference for the Brave and True is an open-source material on causal inference, the statistics of science. It uses only free software, based in Python. Its goal is to be accessible monetarily and intellectually.\n",
    "If you found this book valuable and you want to support it, please go to [Patreon](https://www.patreon.com/causal_inference_for_the_brave_and_true). If you are not ready to contribute financially, you can also help by fixing typos, suggesting edits or giving feedback on passages you didn't understand. Just go to the book's repository and [open an issue](https://github.com/matheusfacure/python-causality-handbook/issues). Finally, if you liked this content, please share it with others who might find it useful and give it a [star on GitHub](https://github.com/matheusfacure/python-causality-handbook/stargazers)."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "celltoolbar": "Tags",
  "kernelspec": {
   "display_name": "causal-glory",
   "language": "python",
   "name": "causal-glory"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.9.7"
  },
  "toc": {
   "base_numbering": 1,
   "nav_menu": {},
   "number_sections": true,
   "sideBar": true,
   "skip_h1_title": false,
   "title_cell": "Table of Contents",
   "title_sidebar": "Contents",
   "toc_cell": false,
   "toc_position": {},
   "toc_section_display": true,
   "toc_window_display": false
  }
 },
 "nbformat": 4,
 "nbformat_minor": 4
}
